summaryrefslogtreecommitdiff
path: root/svtools/source/config/accessibilityoptions.cxx
diff options
context:
space:
mode:
Diffstat (limited to 'svtools/source/config/accessibilityoptions.cxx')
-rw-r--r--svtools/source/config/accessibilityoptions.cxx10
1 files changed, 6 insertions, 4 deletions
diff --git a/svtools/source/config/accessibilityoptions.cxx b/svtools/source/config/accessibilityoptions.cxx
index 05c113478402..4922326fa0f0 100644
--- a/svtools/source/config/accessibilityoptions.cxx
+++ b/svtools/source/config/accessibilityoptions.cxx
@@ -31,6 +31,7 @@
#include <vcl/settings.hxx>
#include <vcl/svapp.hxx>
#include <tools/diagnose_ex.h>
+#include <mutex>
#include "itemholder2.hxx"
@@ -70,9 +71,9 @@ sal_Int32 SvtAccessibilityOptions::sm_nAccessibilityRefCount
namespace
{
- ::osl::Mutex& SingletonMutex()
+ std::mutex& SingletonMutex()
{
- static ::osl::Mutex SINGLETON;
+ static std::mutex SINGLETON;
return SINGLETON;
}
}
@@ -337,10 +338,11 @@ SvtAccessibilityOptions::SvtAccessibilityOptions()
{
if (!utl::ConfigManager::IsFuzzing())
{
- ::osl::MutexGuard aGuard( SingletonMutex() );
+ std::unique_lock aGuard( SingletonMutex() );
if(!sm_pSingleImplConfig)
{
sm_pSingleImplConfig = new SvtAccessibilityOptions_Impl;
+ aGuard.unlock(); // because holdConfigItem will call this constructor
svtools::ItemHolder2::holdConfigItem(EItem::AccessibilityOptions);
}
++sm_nAccessibilityRefCount;
@@ -351,7 +353,7 @@ SvtAccessibilityOptions::SvtAccessibilityOptions()
SvtAccessibilityOptions::~SvtAccessibilityOptions()
{
//EndListening( *sm_pSingleImplConfig, sal_True );
- ::osl::MutexGuard aGuard( SingletonMutex() );
+ std::unique_lock aGuard( SingletonMutex() );
if( !--sm_nAccessibilityRefCount )
{
//if( sm_pSingleImplConfig->IsModified() )