summaryrefslogtreecommitdiff
path: root/sc/source/ui/dbgui
diff options
context:
space:
mode:
authorBjoern Michaelsen <bjoern.michaelsen@canonical.com>2016-04-12 12:20:07 +0200
committerBjörn Michaelsen <bjoern.michaelsen@canonical.com>2016-04-12 10:24:51 +0000
commit62fdce393276a8f5ad86a41dc49719c61581ce63 (patch)
treeaeba4ded007c536fe1dfc5d5b03fdd30f50cde30 /sc/source/ui/dbgui
parentb297456515ba198913e49121cfcbc1afc8d195a7 (diff)
lp#1566050: prevent cyclic reference zombies
regression, likely from 2660d24a07866e083c5135ea263030f3e3a2e729: 1/ Since that change mxAccessible in ScCsvGrid holds a rtl::Reference on a ScAccessibleCsvGrid 2/ Which in turn holds a VclPtr<> (aka a rtl::Reference with lipstick) on the ScCsvControl These are a circular references, making both of them live forever and leak past the point where on LibreOffice close all of Vcl is long gone, when these are dtored. Clearing mxAccessible on disposing should help. Change-Id: Iebb2635ec4ea143e7f0dbfebad2e6141a68e72e8 Reviewed-on: https://gerrit.libreoffice.org/24021 Reviewed-by: Björn Michaelsen <bjoern.michaelsen@canonical.com> Tested-by: Björn Michaelsen <bjoern.michaelsen@canonical.com>
Diffstat (limited to 'sc/source/ui/dbgui')
-rw-r--r--sc/source/ui/dbgui/csvcontrol.cxx1
1 files changed, 1 insertions, 0 deletions
diff --git a/sc/source/ui/dbgui/csvcontrol.cxx b/sc/source/ui/dbgui/csvcontrol.cxx
index 2fb10309f0d5..51ed04cb3f74 100644
--- a/sc/source/ui/dbgui/csvcontrol.cxx
+++ b/sc/source/ui/dbgui/csvcontrol.cxx
@@ -81,6 +81,7 @@ void ScCsvControl::dispose()
{
if( mxAccessible.is() )
mxAccessible->dispose();
+ mxAccessible = nullptr; // lp#1566050: prevent cyclic reference zombies
Control::dispose();
}