svx/source/fmcomp/gridctrl.cxx | 7 +++++++ 1 file changed, 7 insertions(+)
New commits: commit 6f2b5043613bea755f01b413fd86ece0b3a29e5d Author: Caolán McNamara <caolan.mcnam...@collabora.com> AuthorDate: Mon Jun 3 17:22:21 2024 +0100 Commit: Caolán McNamara <caolan.mcnam...@collabora.com> CommitDate: Mon Jun 3 22:43:45 2024 +0200 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.mcnam...@collabora.com> Reviewed-by: Caolán McNamara <caolan.mcnam...@collabora.com> 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());