Related: tdf#147448 Scope owning mutex before it gets destroyed
Change-Id: I9bacffe1d075431427fb3bf01e4bf30ba6fbc201
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/130574
Reviewed-by: Eike Rathke <erack@redhat.com>
Tested-by: Jenkins
diff --git a/sc/source/core/data/documen2.cxx b/sc/source/core/data/documen2.cxx
index da55ebf..82789e8 100644
--- a/sc/source/core/data/documen2.cxx
+++ b/sc/source/core/data/documen2.cxx
@@ -339,7 +339,11 @@ ScDocument::~ScDocument()
if ( pRefreshTimerControl )
{ // To be sure there isn't anything running do it with a protector,
// this ensures also that nothing needs the control anymore.
ScRefreshTimerProtector aProt( GetRefreshTimerControlAddress() );
{
// Use a scope on its own because it is undefined behaviour if a
// mutex is destroyed while still owned.
ScRefreshTimerProtector aProt( GetRefreshTimerControlAddress() );
}
pRefreshTimerControl.reset();
}