diff options
author | Caolán McNamara <caolanm@redhat.com> | 2015-10-14 16:54:47 +0100 |
---|---|---|
committer | Michael Stahl <mstahl@redhat.com> | 2015-10-20 20:57:06 +0000 |
commit | 343595ff97e4ae50613c1e479315e16f3bcd54be (patch) | |
tree | 8c164a1365b985c67a34864885ed789cd8fa7fc4 /sw | |
parent | 43769b7aebd6e89c5d9260b244e34d0858e99216 (diff) |
fix SwIndex assert on fdo66692-2.doc
Change-Id: Ic3330817809727bfa2293ba74dcd7f5a25683dae
(cherry picked from commit 2d2d5d1a704aa6827657a73b395620009b04b3ea)
Reviewed-on: https://gerrit.libreoffice.org/19378
Reviewed-by: Michael Stahl <mstahl@redhat.com>
Tested-by: Michael Stahl <mstahl@redhat.com>
Diffstat (limited to 'sw')
-rw-r--r-- | sw/qa/core/data/ww8/pass/fdo66692-2.doc | bin | 0 -> 91136 bytes | |||
-rw-r--r-- | sw/source/filter/ww8/ww8par6.cxx | 15 |
2 files changed, 15 insertions, 0 deletions
diff --git a/sw/qa/core/data/ww8/pass/fdo66692-2.doc b/sw/qa/core/data/ww8/pass/fdo66692-2.doc Binary files differnew file mode 100644 index 000000000000..5042eeeb206c --- /dev/null +++ b/sw/qa/core/data/ww8/pass/fdo66692-2.doc diff --git a/sw/source/filter/ww8/ww8par6.cxx b/sw/source/filter/ww8/ww8par6.cxx index 86281ac64915..1a393b9dd2f3 100644 --- a/sw/source/filter/ww8/ww8par6.cxx +++ b/sw/source/filter/ww8/ww8par6.cxx @@ -2513,6 +2513,21 @@ void SwWW8ImplReader::StopApo() if (rBrush.GetColor().GetColor() != COL_AUTO) aBg = rBrush.GetColor(); + if (m_pLastAnchorPos.get()) + { + //If the last anchor pos is here, then clear the anchor pos. + //This "last anchor pos" is only used for fixing up the + //postions of things anchored to page breaks and here + //we are removing the last paragraph of a frame, so there + //cannot be a page break at this point so we can + //safely reset m_pLastAnchorPos to avoid any dangling + //SwIndex's pointing into the deleted paragraph + SwNodeIndex aLastAnchorPos(m_pLastAnchorPos->nNode); + SwNodeIndex aToBeJoined(aPref, 1); + if (aLastAnchorPos == aToBeJoined) + m_pLastAnchorPos.reset(); + } + //Get rid of extra empty paragraph pNd->JoinNext(); } |