diff Framework/Plugins/IndexBackend.cpp @ 232:4e15eace9b90

reorganization in DatabaseBackendAdapterV3
author Sebastien Jodogne <s.jodogne@gmail.com>
date Tue, 06 Apr 2021 12:50:06 +0200
parents a4918d57435c
children d1b124d116c1
line wrap: on
line diff
--- a/Framework/Plugins/IndexBackend.cpp	Tue Apr 06 11:59:31 2021 +0200
+++ b/Framework/Plugins/IndexBackend.cpp	Tue Apr 06 12:50:06 2021 +0200
@@ -318,6 +318,8 @@
 
   void IndexBackend::SetOutputFactory(IDatabaseBackendOutput::IFactory* factory)
   {
+    boost::unique_lock<boost::shared_mutex> lock(outputFactoryMutex_);
+      
     if (factory == NULL)
     {
       throw Orthanc::OrthancException(Orthanc::ErrorCode_NullPointer);
@@ -335,6 +337,8 @@
 
   IDatabaseBackendOutput* IndexBackend::CreateOutput()
   {
+    boost::shared_lock<boost::shared_mutex> lock(outputFactoryMutex_);
+      
     if (outputFactory_.get() == NULL)
     {
       throw Orthanc::OrthancException(Orthanc::ErrorCode_BadSequenceOfCalls);