Hi, I have submitted a patch for review:
https://gerrit.libreoffice.org/4045 To pull it, you can do: git pull ssh://gerrit.libreoffice.org:29418/core refs/changes/45/4045/1 remove chart listener when chart is deleted, fdo#64639 Change-Id: I7ebf75f49c89edcb0bba3a597ba24ac1c0a655ef --- M sc/inc/chartlis.hxx M sc/source/core/tool/chartlis.cxx M sc/source/ui/unoobj/chartuno.cxx 3 files changed, 8 insertions(+), 0 deletions(-) diff --git a/sc/inc/chartlis.hxx b/sc/inc/chartlis.hxx index 788c326..e32a1f0 100644 --- a/sc/inc/chartlis.hxx +++ b/sc/inc/chartlis.hxx @@ -171,6 +171,8 @@ const ScChartListener* findByName(const rtl::OUString& rName) const; bool hasListeners() const; + void removeByName(const OUString& rName); + const ListenersType& getListeners() const; ListenersType& getListeners(); StringSetType& getNonOleObjectNames(); diff --git a/sc/source/core/tool/chartlis.cxx b/sc/source/core/tool/chartlis.cxx index 67da747..712c60a404 100644 --- a/sc/source/core/tool/chartlis.cxx +++ b/sc/source/core/tool/chartlis.cxx @@ -469,6 +469,11 @@ maListeners.insert(aName, pListener); } +void ScChartListenerCollection::removeByName(const rtl::OUString& rName) +{ + maListeners.erase(rName); +} + ScChartListener* ScChartListenerCollection::findByName(const rtl::OUString& rName) { ListenersType::iterator it = maListeners.find(rName); diff --git a/sc/source/ui/unoobj/chartuno.cxx b/sc/source/ui/unoobj/chartuno.cxx index 8072f3b..092ddce 100644 --- a/sc/source/ui/unoobj/chartuno.cxx +++ b/sc/source/ui/unoobj/chartuno.cxx @@ -298,6 +298,7 @@ if (pObj) { ScDocument* pDoc = pDocShell->GetDocument(); + pDoc->GetChartListenerCollection()->removeByName(aName); ScDrawLayer* pModel = pDoc->GetDrawLayer(); // ist nicht 0 SdrPage* pPage = pModel->GetPage(static_cast<sal_uInt16>(nTab)); // ist nicht 0 -- To view, visit https://gerrit.libreoffice.org/4045 To unsubscribe, visit https://gerrit.libreoffice.org/settings Gerrit-MessageType: newchange Gerrit-Change-Id: I7ebf75f49c89edcb0bba3a597ba24ac1c0a655ef Gerrit-PatchSet: 1 Gerrit-Project: core Gerrit-Branch: libreoffice-4-0 Gerrit-Owner: Markus Mohrhard <markus.mohrh...@googlemail.com> _______________________________________________ LibreOffice mailing list LibreOffice@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice