From d9f10fbfa795ae2b5b70265c14184e79f802ebca Mon Sep 17 00:00:00 2001 From: "Thiago Marcos P. Santos" Date: Mon, 16 Nov 2015 21:06:18 +0200 Subject: [PATCH] [core] Use std::mutex on RunLoop Only the WorkTask mutex needs to be recusive because the WorkQueue will run a WorkTask that will pop itself from the WorkQueue causing it to get cancelled. --- src/mbgl/util/run_loop.cpp | 2 +- src/mbgl/util/run_loop.hpp | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/mbgl/util/run_loop.cpp b/src/mbgl/util/run_loop.cpp index 5c9595946..7f277c988 100644 --- a/src/mbgl/util/run_loop.cpp +++ b/src/mbgl/util/run_loop.cpp @@ -15,7 +15,7 @@ RunLoop::~RunLoop() { } void RunLoop::withMutex(std::function&& fn) { - std::lock_guard lock(mutex); + std::lock_guard lock(mutex); fn(); } diff --git a/src/mbgl/util/run_loop.hpp b/src/mbgl/util/run_loop.hpp index 7f56c18dc..739ec0ba7 100644 --- a/src/mbgl/util/run_loop.hpp +++ b/src/mbgl/util/run_loop.hpp @@ -146,7 +146,7 @@ private: void process(); Queue queue; - std::recursive_mutex mutex; + std::mutex mutex; uv::async async; static uv::tls current;