diff options
author | Caolán McNamara <caolanm@redhat.com> | 2013-11-06 15:03:41 +0000 |
---|---|---|
committer | Caolán McNamara <caolanm@redhat.com> | 2013-11-06 15:06:57 +0000 |
commit | 0325093fdfbb150f8a5176c56cc1a4803ffd1c80 (patch) | |
tree | 1e8416743432a251e69798ec79d084eb8b63b85d /writerfilter | |
parent | 8f25d823a8d5488ae4880ae009a026f6fc07f611 (diff) |
check for empty string
as demonstrated by ooo29618-1.doc
Change-Id: I81c953530cd3a617a245ed03a9c355f3383045ab
Diffstat (limited to 'writerfilter')
-rw-r--r-- | writerfilter/source/rtftok/rtfdocumentimpl.cxx | 9 |
1 files changed, 6 insertions, 3 deletions
diff --git a/writerfilter/source/rtftok/rtfdocumentimpl.cxx b/writerfilter/source/rtftok/rtfdocumentimpl.cxx index eea949880a76..f6f3b36b754d 100644 --- a/writerfilter/source/rtftok/rtfdocumentimpl.cxx +++ b/writerfilter/source/rtftok/rtfdocumentimpl.cxx @@ -4046,12 +4046,15 @@ int RTFDocumentImpl::popState() aStr = aStr.copy(8); // extract name int nLength = aStr.toChar(); - aStr = aStr.copy(1); + if (!aStr.isEmpty()) + aStr = aStr.copy(1); OString aName = aStr.copy(0, nLength); - aStr = aStr.copy(nLength+1); // zero-terminated string + if (!aStr.isEmpty()) + aStr = aStr.copy(nLength+1); // zero-terminated string // extract default text nLength = aStr.toChar(); - aStr = aStr.copy(1); + if (!aStr.isEmpty()) + aStr = aStr.copy(1); RTFValue::Pointer_t pNValue(new RTFValue(OStringToOUString(aName, aState.nCurrentEncoding))); m_aFormfieldSprms.set(NS_ooxml::LN_CT_FFData_name, pNValue); if (nLength > 0) |