sc/source/core/data/postit.cxx | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-)
New commits: commit d407791075ce4caff1259aa9a8ae573e4b7bb8bd Author: Eike Rathke <er...@redhat.com> Date: Tue Feb 28 17:16:33 2017 +0100 dissolve() needs to delete head now that it's not a list element anymore Change-Id: I9949a1006e6d1b4b50dd5350106ad69b643e833c diff --git a/sc/source/core/data/postit.cxx b/sc/source/core/data/postit.cxx index b0e736b..2e084c6 100644 --- a/sc/source/core/data/postit.cxx +++ b/sc/source/core/data/postit.cxx @@ -665,15 +665,18 @@ bool ScCaptionPtr::forget() void ScCaptionPtr::dissolve() { + ScCaptionPtr::Head* pHead = mpHead; ScCaptionPtr* pThat = (mpHead ? mpHead->mpFirst : this); while (pThat) { - assert(!pThat->mpNext || mpHead); // next without head is bad + assert(!pThat->mpNext || pThat->mpHead); // next without head is bad + assert(pThat->mpHead == pHead); // same head required within one list ScCaptionPtr* p = pThat->mpNext; pThat->clear(); pThat = p; } - clear(); + assert(!mpHead && !mpNext && !mpCaption); // should had been cleared during list walk + delete pHead; } void ScCaptionPtr::clear() _______________________________________________ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits