include/vcl/event.hxx | 1 + vcl/source/window/event.cxx | 6 ++++++ vcl/source/window/mouse.cxx | 3 +++ 3 files changed, 10 insertions(+)
New commits: commit f04ec99f5e6a543b8191ced61db4710c3c0de356 Author: Noel Grandin <noel.gran...@collabora.co.uk> Date: Tue Dec 13 09:48:52 2016 +0200 tdf#104573 - Assertion failed: SolarMutex not locked Change-Id: Ie46f0e2b60b99aea1c322c7891a41a2e7603c9e9 diff --git a/include/vcl/event.hxx b/include/vcl/event.hxx index 9737bac..a5820c1 100644 --- a/include/vcl/event.hxx +++ b/include/vcl/event.hxx @@ -317,6 +317,7 @@ public: NotifyEvent( MouseNotifyEvent nEventType, vcl::Window* pWindow, const void* pEvent = nullptr ); + ~NotifyEvent(); MouseNotifyEvent GetType() const { return mnEventType; } vcl::Window* GetWindow() const { return mpWindow; } diff --git a/vcl/source/window/event.cxx b/vcl/source/window/event.cxx index 38815a3..8feb212 100644 --- a/vcl/source/window/event.cxx +++ b/vcl/source/window/event.cxx @@ -658,4 +658,10 @@ NotifyEvent::NotifyEvent( MouseNotifyEvent nEventType, vcl::Window* pWindow, mnEventType = nEventType; } +NotifyEvent::~NotifyEvent() +{ + SolarMutexGuard aVclGuard; + mpWindow.clear(); +} + /* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/vcl/source/window/mouse.cxx b/vcl/source/window/mouse.cxx index d1cc051..b769a83 100644 --- a/vcl/source/window/mouse.cxx +++ b/vcl/source/window/mouse.cxx @@ -161,7 +161,10 @@ void Window::ImplCallMouseMove( sal_uInt16 nMouseCode, bool bModChanged ) void Window::ImplGenerateMouseMove() { if ( !mpWindowImpl->mpFrameData->mnMouseMoveId ) + { + SolarMutexGuard aVclGuard; mpWindowImpl->mpFrameData->mnMouseMoveId = Application::PostUserEvent( LINK( mpWindowImpl->mpFrameWindow, Window, ImplGenerateMouseMoveHdl ), nullptr, true ); + } } IMPL_LINK_NOARG(Window, ImplGenerateMouseMoveHdl, void*, void) _______________________________________________ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits