summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMichael Meeks <michael.meeks@collabora.com>2021-11-23 14:25:45 +0000
committerJan Holesovsky <kendy@collabora.com>2021-11-23 22:28:16 +0100
commitf6bf24ea2a7a7d2ab96875c1621cb258c5f15e23 (patch)
treef6e31887a11b3ae6cb9004964cbbe17919e72014
parentff4bd9dc63146f3338ecb1fcee4dbe1606454cad (diff)
Crash around help-windows.
Seems a popular way to crash: vcl::Window::ImplCallMove() vcl/source/window/event.cxx:555 vcl::Window::Show(bool, ShowFlags) [clone .localalias] /usr/include/c++/10/bits/unique_ptr.h:173 vcl::Window::Show(bool, ShowFlags) vcl/source/window/window.cxx:2345 HelpTextWindow::ImplShow() vcl/source/app/help.cxx:371 Scheduler::ProcessTaskScheduling() vcl/source/app/scheduler.cxx:495 Change-Id: I33ca0059844395c41f4d76619cca22aec81df207 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/125709 Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com> Reviewed-by: Jan Holesovsky <kendy@collabora.com>
-rw-r--r--vcl/source/window/event.cxx3
1 files changed, 2 insertions, 1 deletions
diff --git a/vcl/source/window/event.cxx b/vcl/source/window/event.cxx
index 251cddaaf048..000880730adc 100644
--- a/vcl/source/window/event.cxx
+++ b/vcl/source/window/event.cxx
@@ -547,7 +547,8 @@ void Window::ImplCallMove()
vcl::Window *pParent = ImplGetParent();
while( pParent )
{
- if( pParent->mpWindowImpl->mpFrame != mpWindowImpl->mpFrame )
+ if( pParent->mpWindowImpl &&
+ pParent->mpWindowImpl->mpFrame != mpWindowImpl->mpFrame )
{
pParentFrame = pParent->mpWindowImpl->mpFrame;
break;