sal/osl/unx/backtraceapi.cxx |    9 +++++----
 1 file changed, 5 insertions(+), 4 deletions(-)

New commits:
commit 82bc337c979f6d74cb08d0332b44f26b155f9554
Author:     Arnaud Versini <arnaud.vers...@libreoffice.org>
AuthorDate: Sat Oct 9 20:51:27 2021 +0200
Commit:     Noel Grandin <noel.gran...@collabora.co.uk>
CommitDate: Sun Oct 10 14:43:21 2021 +0200

    OSL : use std::mutex in backtraceapi
    
    Change-Id: I2df73d7959dd24882f75130f0fd03ff096dce8d8
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/123322
    Tested-by: Jenkins
    Reviewed-by: Noel Grandin <noel.gran...@collabora.co.uk>

diff --git a/sal/osl/unx/backtraceapi.cxx b/sal/osl/unx/backtraceapi.cxx
index 79fa3adf7296..e98d8d663f39 100644
--- a/sal/osl/unx/backtraceapi.cxx
+++ b/sal/osl/unx/backtraceapi.cxx
@@ -13,6 +13,7 @@
 #include <cstdlib>
 #include <limits>
 #include <memory>
+#include <mutex>
 
 #include <o3tl/runtimetooustring.hxx>
 #include <rtl/ustrbuf.hxx>
@@ -68,7 +69,7 @@ struct FrameData
 };
 
 typedef o3tl::lru_map<void*, OString> FrameCache;
-osl::Mutex frameCacheMutex;
+std::mutex frameCacheMutex;
 FrameCache frameCache( 256 );
 
 void process_file_addr2line( const char* file, std::vector<FrameData>& 
frameData )
@@ -164,7 +165,7 @@ void process_file_addr2line( const char* file, 
std::vector<FrameData>& frameData
                     frame.info = function + " in " + file;
                 else
                     frame.info = function + " at " + source;
-                osl::MutexGuard guard(frameCacheMutex);
+                std::lock_guard guard(frameCacheMutex);
                 frameCache.insert( { frame.addr, frame.info } );
             }
         }
@@ -183,9 +184,9 @@ OUString sal::backtrace_to_string(BacktraceState* 
backtraceState)
     {
         Dl_info dli;
         void* addr = backtraceState->buffer[i];
-        osl::ClearableMutexGuard guard(frameCacheMutex);
+        std::unique_lock guard(frameCacheMutex);
         auto it = frameCache.find(addr);
-        guard.clear();
+        guard.release();
         if( it != frameCache.end())
         {
             frameData[ i ].info = it->second;

Reply via email to