summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorHenry Castro <hcastro@collabora.com>2019-12-18 21:17:29 -0400
committerHenry Castro <hcastro@collabora.com>2019-12-20 12:36:09 +0100
commit3b4be91f44492d7ec7658684f130b4f1779e70d9 (patch)
tree418091ab11159f0f807430ef4078a768a2fe9b06
parentda91403315f76ae36da6db6729f5b2a2870e3aa2 (diff)
lok: ReleaseLOKNotifier only if view shell is assigned to a view frameCODE-4.2.0-2
There is an interesting case with the dialog SwMultiTOXTabDialog it creates a temporary frame-controller-view and when closing the dialog the LOKNotifier was already released, and of course the "close" message is not sent to the client side. Change-Id: Ie6877d077f8fad3e5893be9e1d5f7a337a38c9c8 Reviewed-on: https://gerrit.libreoffice.org/85461 Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com> Reviewed-by: Henry Castro <hcastro@collabora.com>
-rw-r--r--sfx2/source/view/viewsh.cxx4
1 files changed, 2 insertions, 2 deletions
diff --git a/sfx2/source/view/viewsh.cxx b/sfx2/source/view/viewsh.cxx
index 0a6fc164081d..1a022e49f7b2 100644
--- a/sfx2/source/view/viewsh.cxx
+++ b/sfx2/source/view/viewsh.cxx
@@ -1110,7 +1110,7 @@ SfxViewShell::~SfxViewShell()
}
vcl::Window* pFrameWin = GetViewFrame()->GetWindow().GetFrameWindow();
- if (pFrameWin && pFrameWin->GetLOKNotifier())
+ if (pFrameWin && pFrameWin->GetLOKNotifier() == this)
pFrameWin->ReleaseLOKNotifier();
}
@@ -1119,7 +1119,7 @@ bool SfxViewShell::PrepareClose
bool bUI // TRUE: Allow Dialog and so on, FALSE: silent-mode
)
{
- if (GetViewFrame()->GetWindow().GetLOKNotifier())
+ if (GetViewFrame()->GetWindow().GetLOKNotifier() == this)
GetViewFrame()->GetWindow().ReleaseLOKNotifier();
SfxPrinter *pPrinter = GetPrinter();