diff options
author | Arnaud Versini <arnaud.versini@libreoffice.org> | 2021-10-09 20:51:27 +0200 |
---|---|---|
committer | Noel Grandin <noel.grandin@collabora.co.uk> | 2021-10-10 14:43:21 +0200 |
commit | 82bc337c979f6d74cb08d0332b44f26b155f9554 (patch) | |
tree | f960dab79b548e698140fb612162d305e1082f78 /sal | |
parent | cf22245d49df8abab904f28b1fab514bde197f2b (diff) |
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.grandin@collabora.co.uk>
Diffstat (limited to 'sal')
-rw-r--r-- | sal/osl/unx/backtraceapi.cxx | 9 |
1 files changed, 5 insertions, 4 deletions
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; |