diff options
author | Henry Castro <hcastro@collabora.com> | 2021-03-30 15:00:49 -0400 |
---|---|---|
committer | Henry Castro <hcastro@collabora.com> | 2021-04-01 14:07:10 +0200 |
commit | a06f8147fe34c19da168de5d7b26615981cf055e (patch) | |
tree | 6c81be7aa69dd8d8ee1555986144d42f19a20833 /sdext | |
parent | 5f762b34bb1f93aeb409060d74b8e38ab75a8732 (diff) |
lok: remove frame action listener when disposing
In order to prevent that the frame action listener
holds the object reference count when removed,
ensure they are removed when disposing the object.
Change-Id: If83574e31230d9c683adaf36af36485650fd2c50
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/113389
Tested-by: Jenkins
Reviewed-by: Henry Castro <hcastro@collabora.com>
Diffstat (limited to 'sdext')
-rw-r--r-- | sdext/source/presenter/PresenterController.cxx | 12 |
1 files changed, 6 insertions, 6 deletions
diff --git a/sdext/source/presenter/PresenterController.cxx b/sdext/source/presenter/PresenterController.cxx index e1ddf110c895..7d4ac91b710e 100644 --- a/sdext/source/presenter/PresenterController.cxx +++ b/sdext/source/presenter/PresenterController.cxx @@ -204,12 +204,6 @@ void PresenterController::disposing() if (mxConfigurationController.is()) mxConfigurationController->removeConfigurationChangeListener(this); - Reference<XComponent> xWindowManagerComponent ( - static_cast<XWeak*>(mpWindowManager.get()), UNO_QUERY); - mpWindowManager = nullptr; - if (xWindowManagerComponent.is()) - xWindowManagerComponent->dispose(); - if (mxController.is()) { Reference<frame::XFrame> xFrame (mxController->getFrame()); @@ -218,6 +212,12 @@ void PresenterController::disposing() mxController = nullptr; } + Reference<XComponent> xWindowManagerComponent ( + static_cast<XWeak*>(mpWindowManager.get()), UNO_QUERY); + mpWindowManager = nullptr; + if (xWindowManagerComponent.is()) + xWindowManagerComponent->dispose(); + mxComponentContext = nullptr; mxConfigurationController = nullptr; mxSlideShowController = nullptr; |