From 84559df053d1e019c41dd26a7d3adb635a7002c2 Mon Sep 17 00:00:00 2001 From: Christopher Jones Date: Sat, 7 Jun 2014 21:01:08 +0200 Subject: [PATCH] Have to use recusive_mutex when locking Reflex::Class::PathToBase --- cint/reflex/src/Class.cxx | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/cint/reflex/src/Class.cxx b/cint/reflex/src/Class.cxx index 1bb3dd7f1927a..f1a3aaa14e3a0 100644 --- a/cint/reflex/src/Class.cxx +++ b/cint/reflex/src/Class.cxx @@ -48,7 +48,7 @@ __dynamic_cast(const void* __src_ptr, // Starting object. } #endif -static std::mutex gPathsToBaseLock; +static std::recursive_mutex gPathsToBaseLock; //------------------------------------------------------------------------------- Reflex::Class::Class(const char* typ, @@ -520,7 +520,7 @@ Reflex::Class::NewBases() const { const std::vector& Reflex::Class::PathToBase(const Scope& bas) const { //------------------------------------------------------------------------------- - std::lock_guard guard(gPathsToBaseLock); + std::lock_guard guard(gPathsToBaseLock); // Return a vector of offset functions from the current class to the base class. const BasePath_t* pathToBase = fPathsToBase[bas.Id()];