summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCaolán McNamara <caolanm@redhat.com>2015-06-04 21:00:13 +0100
committerCaolán McNamara <caolanm@redhat.com>2015-06-04 21:01:16 +0100
commit7aeeef6902ee2be4934341072829a6f15a14f3fb (patch)
treeb43c8af8168d5472f533bc232beda8f994f6b5a9
parente069404a5382ac0095f64a824ef8dc0a9eae260d (diff)
Resolves: tdf#91637 avoid -1 string index
Change-Id: I006040f4589065141310fe2a89b8d2ba3e54ad2c (cherry picked from commit 4e96b278965875a95f02993590f30ab5859c1fed)
-rw-r--r--sw/source/core/fields/expfld.cxx7
1 files changed, 5 insertions, 2 deletions
diff --git a/sw/source/core/fields/expfld.cxx b/sw/source/core/fields/expfld.cxx
index b9007ab4e86e..e7da51037144 100644
--- a/sw/source/core/fields/expfld.cxx
+++ b/sw/source/core/fields/expfld.cxx
@@ -746,8 +746,11 @@ bool SwSeqFieldList::SeekEntry( const _SeqFieldLstElem& rNew, size_t* pP ) const
sal_Int32 nNum1 = sNum1.toInt32();
nCmp = nNum2 - nNum1;
if( 0 == nCmp )
- nCmp = rCaseColl.compareString( rTmp2.copy( nFndPos2 ),
- rTmp1.copy( nFndPos1 ));
+ {
+ OUString aTmp1 = nFndPos1 != -1 ? rTmp1.copy(nFndPos1) : OUString();
+ OUString aTmp2 = nFndPos2 != -1 ? rTmp2.copy(nFndPos2) : OUString();
+ nCmp = rCaseColl.compareString(aTmp2, aTmp1);
+ }
}
else
nCmp = rColl.compareString( rTmp2, rTmp1 );