diff options
author | Caolán McNamara <caolanm@redhat.com> | 2014-12-16 13:43:01 +0000 |
---|---|---|
committer | Caolán McNamara <caolanm@redhat.com> | 2014-12-16 14:08:15 +0000 |
commit | 7324aa6886d459c36f6ed98261327ca9759efcdc (patch) | |
tree | 2a1f0d485e45cdb600e391566f935f2ecc06fa1c /sw | |
parent | 0946e2da2a310d9cfb5feeed94a6b2ad9f829751 (diff) |
Related: #i123653# skip ranges that end before starting point
fix assert on loading ooo123653-1, we don't care about ranges that end before
the starting point we are interested in
Change-Id: I46ddf882ce4099dbcd77c62569c5c51f1ce5aa76
Diffstat (limited to 'sw')
-rw-r--r-- | sw/source/filter/ww8/ww8graf.cxx | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/sw/source/filter/ww8/ww8graf.cxx b/sw/source/filter/ww8/ww8graf.cxx index 0ab8038f7c26..c1f39df56f90 100644 --- a/sw/source/filter/ww8/ww8graf.cxx +++ b/sw/source/filter/ww8/ww8graf.cxx @@ -597,7 +597,7 @@ void SwWW8ImplReader::InsertAttrsAsDrawingAttrs(long nStartCp, long nEndCp, pPlcxMan = new WW8PLCFMan(pSBase, eType, nStartCp, true); WW8_CP nStart = pPlcxMan->Where(); - WW8_CP nNext, nEnd, nStartReplace=0; + WW8_CP nNext, nStartReplace=0; bool bDoingSymbol = false; sal_Unicode cReplaceSymbol = cSymbol; @@ -616,6 +616,7 @@ void SwWW8ImplReader::InsertAttrsAsDrawingAttrs(long nStartCp, long nEndCp, WW8_CP nTxtStart = nStart; if (nTxtStart < nStartCp) nTxtStart = nStartCp; + // get position of next SPRM bool bStartAttr = pPlcxMan->Get(&aRes); nAktColl = pPlcxMan->GetColl(); @@ -696,9 +697,9 @@ void SwWW8ImplReader::InsertAttrsAsDrawingAttrs(long nStartCp, long nEndCp, pPlcxMan->advance(); nNext = pPlcxMan->Where(); - if( (nNext != nStart) && !bONLYnPicLocFc ) + const WW8_CP nEnd = ( nNext < nEndCp ) ? nNext : nEndCp; + if (!bONLYnPicLocFc && nNext != nStart && nEnd >= nStartCp) { - nEnd = ( nNext < nEndCp ) ? nNext : nEndCp; SfxItemPool *pEditPool = pS->GetPool(); // Here read current properties and convert them into pS |