diff --git a/src/sync.h b/src/sync.h index a4f4d1ac8d6..a9d0091bd29 100644 --- a/src/sync.h +++ b/src/sync.h @@ -165,10 +165,11 @@ private: bool TryEnter(const char* pszName, const char* pszFile, int nLine) { EnterCritical(pszName, pszFile, nLine, Base::mutex(), true); - if (!Base::try_lock()) { - LeaveCritical(); + if (Base::try_lock()) { + return true; } - return Base::owns_lock(); + LeaveCritical(); + return false; } public: