# HG changeset patch # User Sebastien Jodogne # Date 1544787795 -3600 # Node ID e39c1ebb7a0e72c296e822324324fba6d7c46531 # Parent ffaa97a2c83a47e15c4326568208556d6e459b8d fix in backwards compatibility diff -r ffaa97a2c83a -r e39c1ebb7a0e Framework/Plugins/PluginInitialization.cpp --- a/Framework/Plugins/PluginInitialization.cpp Wed Dec 05 08:57:46 2018 +0100 +++ b/Framework/Plugins/PluginInitialization.cpp Fri Dec 14 12:43:15 2018 +0100 @@ -24,6 +24,7 @@ #include "../Common/ImplicitTransaction.h" #include +#include #include @@ -86,6 +87,35 @@ return false; } + if (useFallback) + { + std::string v(context->orthancVersion); + + if (v == "mainline") + { + isOptimal = true; + } + else + { + std::vector tokens; + Orthanc::Toolbox::TokenizeString(tokens, v, '.'); + + if (tokens.size() != 3) + { + LOG(ERROR) << "Bad version of Orthanc: " << v; + return false; + } + + int major = boost::lexical_cast(tokens[0]); + int minor = boost::lexical_cast(tokens[1]); + int revision = boost::lexical_cast(tokens[2]); + + isOptimal = (major > 1 || + (major == 1 && minor > 4) || + (major == 1 && minor == 4 && revision >= 0)); + } + } + if (!isOptimal && isIndex) {