Blame SOURCES/0361-sw-lok-comments-avoid-crash-an-exit-after-clicking-t.patch

f325b2
From 0410c35ff5f46e51def9a2515d8e5a72f8fd37c4 Mon Sep 17 00:00:00 2001
f325b2
From: Miklos Vajna <vmiklos@collabora.co.uk>
f325b2
Date: Tue, 24 Nov 2015 15:20:22 +0100
f325b2
Subject: [PATCH 361/398] sw lok comments: avoid crash an exit after clicking
f325b2
 the scrollbar
f325b2
f325b2
Without this, vcl::Window::ImplTrackTimerHdl() will be called on a
f325b2
deleted vcl::Window.
f325b2
f325b2
Can be reproduced with a comment having a scrollbar in a LOK client,
f325b2
then clicking on the down button of the scrollbar a number of times ->
f325b2
crash on exit.
f325b2
f325b2
Change-Id: I5d67f96e8baa199f65ec5cf39cb5d39c8162ff33
f325b2
(cherry picked from commit 7c654ee9d51a752e02c0a972de27d699ab5b649a)
f325b2
---
f325b2
 sw/source/uibase/docvw/SidebarScrollBar.cxx | 5 +++++
f325b2
 sw/source/uibase/docvw/SidebarScrollBar.hxx | 1 +
f325b2
 2 files changed, 6 insertions(+)
f325b2
f325b2
diff --git a/sw/source/uibase/docvw/SidebarScrollBar.cxx b/sw/source/uibase/docvw/SidebarScrollBar.cxx
f325b2
index 7a80363693d1..b4d70b423eec 100644
f325b2
--- a/sw/source/uibase/docvw/SidebarScrollBar.cxx
f325b2
+++ b/sw/source/uibase/docvw/SidebarScrollBar.cxx
f325b2
@@ -60,6 +60,11 @@ void SidebarScrollBar::LogicInvalidate(const Rectangle* pRectangle)
f325b2
     rWrtShell.libreOfficeKitCallback(LOK_CALLBACK_INVALIDATE_TILES, sRectangle.getStr());
f325b2
 }
f325b2
 
f325b2
+void SidebarScrollBar::MouseButtonUp(const MouseEvent& /*rMouseEvent*/)
f325b2
+{
f325b2
+    EndTracking();
f325b2
+}
f325b2
+
f325b2
 void SidebarScrollBar::MouseMove(const MouseEvent& rMouseEvent)
f325b2
 {
f325b2
     TrackingEvent aEvent(rMouseEvent);
f325b2
diff --git a/sw/source/uibase/docvw/SidebarScrollBar.hxx b/sw/source/uibase/docvw/SidebarScrollBar.hxx
f325b2
index ea5639e42e92..0de225b2a135 100644
f325b2
--- a/sw/source/uibase/docvw/SidebarScrollBar.hxx
f325b2
+++ b/sw/source/uibase/docvw/SidebarScrollBar.hxx
f325b2
@@ -31,6 +31,7 @@ protected:
f325b2
     /// @see OutputDevice::LogicInvalidate().
f325b2
     void LogicInvalidate(const Rectangle* pRectangle) override;
f325b2
     void MouseMove(const MouseEvent& rMouseEvent) override;
f325b2
+    void MouseButtonUp(const MouseEvent& rMouseEvent) override;
f325b2
 public:
f325b2
     SidebarScrollBar(SwSidebarWin& rSidebarWin, WinBits nStyle, SwView& rView);
f325b2
     virtual ~SidebarScrollBar();
f325b2
-- 
f325b2
2.12.0
f325b2