summaryrefslogtreecommitdiff
path: root/svx
diff options
context:
space:
mode:
authorCaolán McNamara <caolan.mcnamara@collabora.com>2024-06-03 17:22:21 +0100
committerCaolán McNamara <caolan.mcnamara@collabora.com>2024-06-03 22:43:45 +0200
commit6f2b5043613bea755f01b413fd86ece0b3a29e5d (patch)
tree3a7339de5d7b4f0a59ce7ca92ac190150a15d522 /svx
parent03aa8a1d9bfe4af2f37df0bde42193c2cf90ffb4 (diff)
crashtesting: BrowseBox::GetControlArea crash
see with forums/ods/forum-en-11050.ods Change-Id: I2b1dadf51ab8efa1b66f5b7463b05ad4dc52f91d Reviewed-on: https://gerrit.libreoffice.org/c/core/+/168386 Tested-by: Caolán McNamara <caolan.mcnamara@collabora.com> Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Diffstat (limited to 'svx')
-rw-r--r--svx/source/fmcomp/gridctrl.cxx7
1 files changed, 7 insertions, 0 deletions
diff --git a/svx/source/fmcomp/gridctrl.cxx b/svx/source/fmcomp/gridctrl.cxx
index faedec67aa66..b6fb24d05df7 100644
--- a/svx/source/fmcomp/gridctrl.cxx
+++ b/svx/source/fmcomp/gridctrl.cxx
@@ -817,11 +817,15 @@ void DbGridControl::dispose()
m_aBar.disposeAndClear();
+ m_aRearrangeIdle.Stop();
+
EditBrowseBox::dispose();
}
void DbGridControl::RearrangeAtIdle()
{
+ if (isDisposed())
+ return;
m_aRearrangeIdle.Start();
}
@@ -2642,6 +2646,9 @@ IMPL_LINK_NOARG(DbGridControl, OnDelete, void*, void)
IMPL_LINK_NOARG(DbGridControl, RearrangeHdl, Timer*, void)
{
+ if (isDisposed())
+ return;
+
// and give it a chance to rearrange
Point aPoint = GetControlArea().TopLeft();
sal_uInt16 nX = static_cast<sal_uInt16>(aPoint.X());