sw/source/uibase/docvw/PostItMgr.cxx | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-)
New commits: commit 036f38d34f28288dbde80c230dfca692dca56cb3 Author: Julien Nabet <[email protected]> AuthorDate: Sun May 24 22:56:28 2020 +0200 Commit: Noel Grandin <[email protected]> CommitDate: Mon May 25 10:56:00 2020 +0200 tdf#133348 remove from list before calling SetActiveSidebarWin so GetNextPostIt won't deal with mvPostItFields containing empty unique_ptr See bt here: https://bugs.documentfoundation.org/attachment.cgi?id=161242 Change-Id: I7c9a3e91d5186492cb185f799b60d1dcc5edf7af Reviewed-on: https://gerrit.libreoffice.org/c/core/+/94766 (cherry picked from commit b0bbfdf89d6496ffda4dc409ec5f2add8c94fe2a) Reviewed-on: https://gerrit.libreoffice.org/c/core/+/94680 Tested-by: Jenkins Reviewed-by: Noel Grandin <[email protected]> diff --git a/sw/source/uibase/docvw/PostItMgr.cxx b/sw/source/uibase/docvw/PostItMgr.cxx index 73950af7db24..88f917a923ea 100644 --- a/sw/source/uibase/docvw/PostItMgr.cxx +++ b/sw/source/uibase/docvw/PostItMgr.cxx @@ -316,12 +316,14 @@ void SwPostItMgr::RemoveItem( SfxBroadcaster* pBroadcast ) if (i != mvPostItFields.end()) { std::unique_ptr<SwSidebarItem> p = std::move(*i); - if (GetActiveSidebarWin() == p->pPostIt) - SetActiveSidebarWin(nullptr); // tdf#120487 remove from list before dispose, so comment window // won't be recreated due to the entry still in the list if focus // transferring from the pPostIt triggers relayout of postits + // tdf#133348 remove from list before calling SetActiveSidebarWin + // so GetNextPostIt won't deal with mvPostItFields containing empty unique_ptr mvPostItFields.erase(i); + if (GetActiveSidebarWin() == p->pPostIt) + SetActiveSidebarWin(nullptr); p->pPostIt.disposeAndClear(); } mbLayout = true; _______________________________________________ Libreoffice-commits mailing list [email protected] https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
