diff options
Diffstat (limited to 'implementation/plugin/src/plugin_manager.cpp')
-rw-r--r-- | implementation/plugin/src/plugin_manager.cpp | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/implementation/plugin/src/plugin_manager.cpp b/implementation/plugin/src/plugin_manager.cpp index e922fd6..3b9b3f7 100644 --- a/implementation/plugin/src/plugin_manager.cpp +++ b/implementation/plugin/src/plugin_manager.cpp @@ -62,7 +62,7 @@ void plugin_manager::load_plugins() { } } - std::lock_guard<std::mutex> its_lock_start_stop(plugins_mutex_); + std::lock_guard<std::recursive_mutex> its_lock_start_stop(plugins_mutex_); // Load plug-in info from libraries parsed before for (auto plugin_name : plugins) { void* handle = load_library(plugin_name); @@ -105,7 +105,7 @@ void plugin_manager::load_plugins() { } std::shared_ptr<plugin> plugin_manager::get_plugin(plugin_type_e _type, std::string _name) { - std::lock_guard<std::mutex> its_lock_start_stop(plugins_mutex_); + std::lock_guard<std::recursive_mutex> its_lock_start_stop(plugins_mutex_); auto its_type = plugins_.find(_type); if (its_type != plugins_.end()) { auto its_name = its_type->second.find(_name); @@ -142,7 +142,7 @@ std::shared_ptr<plugin> plugin_manager::load_plugin(const std::string _library, } bool plugin_manager::unload_plugin(plugin_type_e _type) { - std::lock_guard<std::mutex> its_lock_start_stop(plugins_mutex_); + std::lock_guard<std::recursive_mutex> its_lock_start_stop(plugins_mutex_); const auto found_handle = handles_.find(_type); if (found_handle != handles_.end()) { for (auto its_name : found_handle->second) { |