# HG changeset patch # User Sebastien Jodogne # Date 1767356486 -3600 # Node ID 319c41508f7fe1aaa1d8b87cd6b347fa0623dda0 # Parent b1251ab963a909ecc47970f7bfd15bc6fbb573ff sync diff -r b1251ab963a9 -r 319c41508f7f OrthancStone/Resources/Orthanc/CMake/AutoGeneratedCode.cmake --- a/OrthancStone/Resources/Orthanc/CMake/AutoGeneratedCode.cmake Tue Dec 09 15:08:35 2025 +0100 +++ b/OrthancStone/Resources/Orthanc/CMake/AutoGeneratedCode.cmake Fri Jan 02 13:21:26 2026 +0100 @@ -2,8 +2,8 @@ # Copyright (C) 2012-2016 Sebastien Jodogne, Medical Physics # Department, University Hospital of Liege, Belgium # Copyright (C) 2017-2023 Osimis S.A., Belgium -# Copyright (C) 2024-2025 Orthanc Team SRL, Belgium -# Copyright (C) 2021-2025 Sebastien Jodogne, ICTEAM UCLouvain, Belgium +# Copyright (C) 2024-2026 Orthanc Team SRL, Belgium +# Copyright (C) 2021-2026 Sebastien Jodogne, ICTEAM UCLouvain, Belgium # # This program is free software: you can redistribute it and/or # modify it under the terms of the GNU Lesser General Public License diff -r b1251ab963a9 -r 319c41508f7f OrthancStone/Resources/Orthanc/CMake/Compiler.cmake --- a/OrthancStone/Resources/Orthanc/CMake/Compiler.cmake Tue Dec 09 15:08:35 2025 +0100 +++ b/OrthancStone/Resources/Orthanc/CMake/Compiler.cmake Fri Jan 02 13:21:26 2026 +0100 @@ -2,8 +2,8 @@ # Copyright (C) 2012-2016 Sebastien Jodogne, Medical Physics # Department, University Hospital of Liege, Belgium # Copyright (C) 2017-2023 Osimis S.A., Belgium -# Copyright (C) 2024-2025 Orthanc Team SRL, Belgium -# Copyright (C) 2021-2025 Sebastien Jodogne, ICTEAM UCLouvain, Belgium +# Copyright (C) 2024-2026 Orthanc Team SRL, Belgium +# Copyright (C) 2021-2026 Sebastien Jodogne, ICTEAM UCLouvain, Belgium # # This program is free software: you can redistribute it and/or # modify it under the terms of the GNU Lesser General Public License diff -r b1251ab963a9 -r 319c41508f7f OrthancStone/Resources/Orthanc/CMake/DownloadOrthancFramework.cmake --- a/OrthancStone/Resources/Orthanc/CMake/DownloadOrthancFramework.cmake Tue Dec 09 15:08:35 2025 +0100 +++ b/OrthancStone/Resources/Orthanc/CMake/DownloadOrthancFramework.cmake Fri Jan 02 13:21:26 2026 +0100 @@ -2,8 +2,8 @@ # Copyright (C) 2012-2016 Sebastien Jodogne, Medical Physics # Department, University Hospital of Liege, Belgium # Copyright (C) 2017-2023 Osimis S.A., Belgium -# Copyright (C) 2024-2025 Orthanc Team SRL, Belgium -# Copyright (C) 2021-2025 Sebastien Jodogne, ICTEAM UCLouvain, Belgium +# Copyright (C) 2024-2026 Orthanc Team SRL, Belgium +# Copyright (C) 2021-2026 Sebastien Jodogne, ICTEAM UCLouvain, Belgium # # This program is free software: you can redistribute it and/or # modify it under the terms of the GNU Lesser General Public License @@ -226,6 +226,11 @@ # for BlockingSharedMessageQueue + fix SetCurrentThreadName from plugins set(ORTHANC_FRAMEWORK_PRE_RELEASE ON) set(ORTHANC_FRAMEWORK_MD5 "e66a7e996d56063b3abb790bb8f12e8d") + elseif (ORTHANC_FRAMEWORK_VERSION STREQUAL "94c7f3784456") + # PixelsMasker 0.1.0 (framework post-1.12.10) + # for BlockingSharedMessageQueue.WaitEmpty() + set(ORTHANC_FRAMEWORK_PRE_RELEASE ON) + set(ORTHANC_FRAMEWORK_MD5 "c037cd2ddbe1b65b431692855483161b") endif() endif() endif() diff -r b1251ab963a9 -r 319c41508f7f OrthancStone/Resources/Orthanc/CMake/DownloadPackage.cmake --- a/OrthancStone/Resources/Orthanc/CMake/DownloadPackage.cmake Tue Dec 09 15:08:35 2025 +0100 +++ b/OrthancStone/Resources/Orthanc/CMake/DownloadPackage.cmake Fri Jan 02 13:21:26 2026 +0100 @@ -2,8 +2,8 @@ # Copyright (C) 2012-2016 Sebastien Jodogne, Medical Physics # Department, University Hospital of Liege, Belgium # Copyright (C) 2017-2023 Osimis S.A., Belgium -# Copyright (C) 2024-2025 Orthanc Team SRL, Belgium -# Copyright (C) 2021-2025 Sebastien Jodogne, ICTEAM UCLouvain, Belgium +# Copyright (C) 2024-2026 Orthanc Team SRL, Belgium +# Copyright (C) 2021-2026 Sebastien Jodogne, ICTEAM UCLouvain, Belgium # # This program is free software: you can redistribute it and/or # modify it under the terms of the GNU Lesser General Public License diff -r b1251ab963a9 -r 319c41508f7f OrthancStone/Resources/Orthanc/CMake/EmbedResources.py --- a/OrthancStone/Resources/Orthanc/CMake/EmbedResources.py Tue Dec 09 15:08:35 2025 +0100 +++ b/OrthancStone/Resources/Orthanc/CMake/EmbedResources.py Fri Jan 02 13:21:26 2026 +0100 @@ -4,8 +4,8 @@ # Copyright (C) 2012-2016 Sebastien Jodogne, Medical Physics # Department, University Hospital of Liege, Belgium # Copyright (C) 2017-2023 Osimis S.A., Belgium -# Copyright (C) 2024-2025 Orthanc Team SRL, Belgium -# Copyright (C) 2021-2025 Sebastien Jodogne, ICTEAM UCLouvain, Belgium +# Copyright (C) 2024-2026 Orthanc Team SRL, Belgium +# Copyright (C) 2021-2026 Sebastien Jodogne, ICTEAM UCLouvain, Belgium # # This program is free software: you can redistribute it and/or # modify it under the terms of the GNU Lesser General Public License diff -r b1251ab963a9 -r 319c41508f7f OrthancStone/Resources/Orthanc/CMake/EmscriptenParameters.cmake --- a/OrthancStone/Resources/Orthanc/CMake/EmscriptenParameters.cmake Tue Dec 09 15:08:35 2025 +0100 +++ b/OrthancStone/Resources/Orthanc/CMake/EmscriptenParameters.cmake Fri Jan 02 13:21:26 2026 +0100 @@ -2,8 +2,8 @@ # Copyright (C) 2012-2016 Sebastien Jodogne, Medical Physics # Department, University Hospital of Liege, Belgium # Copyright (C) 2017-2023 Osimis S.A., Belgium -# Copyright (C) 2024-2025 Orthanc Team SRL, Belgium -# Copyright (C) 2021-2025 Sebastien Jodogne, ICTEAM UCLouvain, Belgium +# Copyright (C) 2024-2026 Orthanc Team SRL, Belgium +# Copyright (C) 2021-2026 Sebastien Jodogne, ICTEAM UCLouvain, Belgium # # This program is free software: you can redistribute it and/or # modify it under the terms of the GNU Lesser General Public License diff -r b1251ab963a9 -r 319c41508f7f OrthancStone/Resources/Orthanc/CMake/GoogleTestConfiguration.cmake --- a/OrthancStone/Resources/Orthanc/CMake/GoogleTestConfiguration.cmake Tue Dec 09 15:08:35 2025 +0100 +++ b/OrthancStone/Resources/Orthanc/CMake/GoogleTestConfiguration.cmake Fri Jan 02 13:21:26 2026 +0100 @@ -2,8 +2,8 @@ # Copyright (C) 2012-2016 Sebastien Jodogne, Medical Physics # Department, University Hospital of Liege, Belgium # Copyright (C) 2017-2023 Osimis S.A., Belgium -# Copyright (C) 2024-2025 Orthanc Team SRL, Belgium -# Copyright (C) 2021-2025 Sebastien Jodogne, ICTEAM UCLouvain, Belgium +# Copyright (C) 2024-2026 Orthanc Team SRL, Belgium +# Copyright (C) 2021-2026 Sebastien Jodogne, ICTEAM UCLouvain, Belgium # # This program is free software: you can redistribute it and/or # modify it under the terms of the GNU Lesser General Public License diff -r b1251ab963a9 -r 319c41508f7f OrthancStone/Resources/Orthanc/Toolchains/LinuxStandardBaseToolchain.cmake --- a/OrthancStone/Resources/Orthanc/Toolchains/LinuxStandardBaseToolchain.cmake Tue Dec 09 15:08:35 2025 +0100 +++ b/OrthancStone/Resources/Orthanc/Toolchains/LinuxStandardBaseToolchain.cmake Fri Jan 02 13:21:26 2026 +0100 @@ -2,8 +2,8 @@ # Copyright (C) 2012-2016 Sebastien Jodogne, Medical Physics # Department, University Hospital of Liege, Belgium # Copyright (C) 2017-2023 Osimis S.A., Belgium -# Copyright (C) 2024-2025 Orthanc Team SRL, Belgium -# Copyright (C) 2021-2025 Sebastien Jodogne, ICTEAM UCLouvain, Belgium +# Copyright (C) 2024-2026 Orthanc Team SRL, Belgium +# Copyright (C) 2021-2026 Sebastien Jodogne, ICTEAM UCLouvain, Belgium # # This program is free software: you can redistribute it and/or # modify it under the terms of the GNU Lesser General Public License diff -r b1251ab963a9 -r 319c41508f7f OrthancStone/Resources/Orthanc/Toolchains/MinGW-W64-Toolchain32.cmake --- a/OrthancStone/Resources/Orthanc/Toolchains/MinGW-W64-Toolchain32.cmake Tue Dec 09 15:08:35 2025 +0100 +++ b/OrthancStone/Resources/Orthanc/Toolchains/MinGW-W64-Toolchain32.cmake Fri Jan 02 13:21:26 2026 +0100 @@ -2,8 +2,8 @@ # Copyright (C) 2012-2016 Sebastien Jodogne, Medical Physics # Department, University Hospital of Liege, Belgium # Copyright (C) 2017-2023 Osimis S.A., Belgium -# Copyright (C) 2024-2025 Orthanc Team SRL, Belgium -# Copyright (C) 2021-2025 Sebastien Jodogne, ICTEAM UCLouvain, Belgium +# Copyright (C) 2024-2026 Orthanc Team SRL, Belgium +# Copyright (C) 2021-2026 Sebastien Jodogne, ICTEAM UCLouvain, Belgium # # This program is free software: you can redistribute it and/or # modify it under the terms of the GNU Lesser General Public License diff -r b1251ab963a9 -r 319c41508f7f OrthancStone/Resources/Orthanc/Toolchains/MinGW-W64-Toolchain64.cmake --- a/OrthancStone/Resources/Orthanc/Toolchains/MinGW-W64-Toolchain64.cmake Tue Dec 09 15:08:35 2025 +0100 +++ b/OrthancStone/Resources/Orthanc/Toolchains/MinGW-W64-Toolchain64.cmake Fri Jan 02 13:21:26 2026 +0100 @@ -2,8 +2,8 @@ # Copyright (C) 2012-2016 Sebastien Jodogne, Medical Physics # Department, University Hospital of Liege, Belgium # Copyright (C) 2017-2023 Osimis S.A., Belgium -# Copyright (C) 2024-2025 Orthanc Team SRL, Belgium -# Copyright (C) 2021-2025 Sebastien Jodogne, ICTEAM UCLouvain, Belgium +# Copyright (C) 2024-2026 Orthanc Team SRL, Belgium +# Copyright (C) 2021-2026 Sebastien Jodogne, ICTEAM UCLouvain, Belgium # # This program is free software: you can redistribute it and/or # modify it under the terms of the GNU Lesser General Public License diff -r b1251ab963a9 -r 319c41508f7f OrthancStone/Resources/Orthanc/Toolchains/MinGWToolchain.cmake --- a/OrthancStone/Resources/Orthanc/Toolchains/MinGWToolchain.cmake Tue Dec 09 15:08:35 2025 +0100 +++ b/OrthancStone/Resources/Orthanc/Toolchains/MinGWToolchain.cmake Fri Jan 02 13:21:26 2026 +0100 @@ -2,8 +2,8 @@ # Copyright (C) 2012-2016 Sebastien Jodogne, Medical Physics # Department, University Hospital of Liege, Belgium # Copyright (C) 2017-2023 Osimis S.A., Belgium -# Copyright (C) 2024-2025 Orthanc Team SRL, Belgium -# Copyright (C) 2021-2025 Sebastien Jodogne, ICTEAM UCLouvain, Belgium +# Copyright (C) 2024-2026 Orthanc Team SRL, Belgium +# Copyright (C) 2021-2026 Sebastien Jodogne, ICTEAM UCLouvain, Belgium # # This program is free software: you can redistribute it and/or # modify it under the terms of the GNU Lesser General Public License diff -r b1251ab963a9 -r 319c41508f7f RenderingPlugin/Resources/Orthanc/Plugins/OrthancPluginCppWrapper.cpp --- a/RenderingPlugin/Resources/Orthanc/Plugins/OrthancPluginCppWrapper.cpp Tue Dec 09 15:08:35 2025 +0100 +++ b/RenderingPlugin/Resources/Orthanc/Plugins/OrthancPluginCppWrapper.cpp Fri Jan 02 13:21:26 2026 +0100 @@ -3,8 +3,8 @@ * Copyright (C) 2012-2016 Sebastien Jodogne, Medical Physics * Department, University Hospital of Liege, Belgium * Copyright (C) 2017-2023 Osimis S.A., Belgium - * Copyright (C) 2024-2025 Orthanc Team SRL, Belgium - * Copyright (C) 2021-2025 Sebastien Jodogne, ICTEAM UCLouvain, Belgium + * Copyright (C) 2024-2026 Orthanc Team SRL, Belgium + * Copyright (C) 2021-2026 Sebastien Jodogne, ICTEAM UCLouvain, Belgium * * This program is free software: you can redistribute it and/or * modify it under the terms of the GNU General Public License as @@ -2441,6 +2441,8 @@ { assert(job != NULL); OrthancJob& that = *reinterpret_cast(job); + + boost::mutex::scoped_lock lock(that.contentMutex_); return CopyStringToMemoryBuffer(target, that.content_); } #else @@ -2450,7 +2452,10 @@ try { - return reinterpret_cast(job)->content_.c_str(); + OrthancJob& that = *reinterpret_cast(job); + boost::mutex::scoped_lock lock(that.contentMutex_); + + return that.content_.c_str(); } catch (...) { @@ -2578,6 +2583,8 @@ void OrthancJob::UpdateContent(const Json::Value& content) { + boost::mutex::scoped_lock lock(contentMutex_); + if (content.type() != Json::objectValue) { ORTHANC_PLUGINS_THROW_PLUGIN_ERROR_CODE(OrthancPluginErrorCode_BadFileFormat); diff -r b1251ab963a9 -r 319c41508f7f RenderingPlugin/Resources/Orthanc/Plugins/OrthancPluginCppWrapper.h --- a/RenderingPlugin/Resources/Orthanc/Plugins/OrthancPluginCppWrapper.h Tue Dec 09 15:08:35 2025 +0100 +++ b/RenderingPlugin/Resources/Orthanc/Plugins/OrthancPluginCppWrapper.h Fri Jan 02 13:21:26 2026 +0100 @@ -3,8 +3,8 @@ * Copyright (C) 2012-2016 Sebastien Jodogne, Medical Physics * Department, University Hospital of Liege, Belgium * Copyright (C) 2017-2023 Osimis S.A., Belgium - * Copyright (C) 2024-2025 Orthanc Team SRL, Belgium - * Copyright (C) 2021-2025 Sebastien Jodogne, ICTEAM UCLouvain, Belgium + * Copyright (C) 2024-2026 Orthanc Team SRL, Belgium + * Copyright (C) 2021-2026 Sebastien Jodogne, ICTEAM UCLouvain, Belgium * * This program is free software: you can redistribute it and/or * modify it under the terms of the GNU General Public License as @@ -28,6 +28,7 @@ #include #include #include +#include #include #include #include @@ -943,6 +944,7 @@ { private: std::string jobType_; + boost::mutex contentMutex_; std::string content_; bool hasSerialized_; std::string serialized_; diff -r b1251ab963a9 -r 319c41508f7f RenderingPlugin/Resources/Orthanc/Plugins/OrthancPluginException.h --- a/RenderingPlugin/Resources/Orthanc/Plugins/OrthancPluginException.h Tue Dec 09 15:08:35 2025 +0100 +++ b/RenderingPlugin/Resources/Orthanc/Plugins/OrthancPluginException.h Fri Jan 02 13:21:26 2026 +0100 @@ -3,8 +3,8 @@ * Copyright (C) 2012-2016 Sebastien Jodogne, Medical Physics * Department, University Hospital of Liege, Belgium * Copyright (C) 2017-2023 Osimis S.A., Belgium - * Copyright (C) 2024-2025 Orthanc Team SRL, Belgium - * Copyright (C) 2021-2025 Sebastien Jodogne, ICTEAM UCLouvain, Belgium + * Copyright (C) 2024-2026 Orthanc Team SRL, Belgium + * Copyright (C) 2021-2026 Sebastien Jodogne, ICTEAM UCLouvain, Belgium * * This program is free software: you can redistribute it and/or * modify it under the terms of the GNU General Public License as diff -r b1251ab963a9 -r 319c41508f7f RenderingPlugin/Resources/Orthanc/Plugins/OrthancPluginsExports.cmake --- a/RenderingPlugin/Resources/Orthanc/Plugins/OrthancPluginsExports.cmake Tue Dec 09 15:08:35 2025 +0100 +++ b/RenderingPlugin/Resources/Orthanc/Plugins/OrthancPluginsExports.cmake Fri Jan 02 13:21:26 2026 +0100 @@ -2,8 +2,8 @@ # Copyright (C) 2012-2016 Sebastien Jodogne, Medical Physics # Department, University Hospital of Liege, Belgium # Copyright (C) 2017-2023 Osimis S.A., Belgium -# Copyright (C) 2024-2025 Orthanc Team SRL, Belgium -# Copyright (C) 2021-2025 Sebastien Jodogne, ICTEAM UCLouvain, Belgium +# Copyright (C) 2024-2026 Orthanc Team SRL, Belgium +# Copyright (C) 2021-2026 Sebastien Jodogne, ICTEAM UCLouvain, Belgium # # This program is free software: you can redistribute it and/or # modify it under the terms of the GNU General Public License as