Description: Fix use of a new function introduced in Orthanc framework > 1.12.1
Author: Sebastien Jodogne <s.jodogne@orthanc-labs.com>
---
This patch header follows DEP-3: http://dep.debian.net/deps/dep3/
Index: OrthancDicomWeb-1.16/Plugin/WadoRs.cpp
===================================================================
--- OrthancDicomWeb-1.16.orig/Plugin/WadoRs.cpp
+++ OrthancDicomWeb-1.16/Plugin/WadoRs.cpp
@@ -70,6 +70,20 @@ static std::string GetResourceUri(Orthan
 }
 
 
+// Hotfix: This function corresponds to a new signature introduced in Orthanc > 1.12.1
+static void ComputeMD5OfSet(std::string& result,
+                            const std::set<std::string>& data)
+{
+  std::string s;
+
+  for (std::set<std::string>::const_iterator it = data.begin(); it != data.end(); ++it)
+  {
+    s += *it;
+  }
+
+  Orthanc::Toolbox::ComputeMD5(result, s);
+}
+
 
 namespace
 {
@@ -1397,7 +1411,7 @@ void CacheSeriesMetadataInternal(std::st
   // save in attachments for future use
   Orthanc::IBufferCompressor::Compress(compressedSeriesMetadata, compressor, serializedSeriesMetadata);
   std::string instancesMd5;
-  Orthanc::Toolbox::ComputeMD5(instancesMd5, instancesIds);
+  ComputeMD5OfSet(instancesMd5, instancesIds);
 
   std::string cacheContent = "2;" + instancesMd5 + ";" + compressedSeriesMetadata; 
 
@@ -1520,7 +1534,7 @@ void RetrieveSeriesMetadataInternalWithC
         std::set<std::string> currentInstancesIds;
         Orthanc::SerializationToolbox::ReadSetOfStrings(currentInstancesIds, seriesInfo, "Instances");
         std::string currentInstancesMd5;
-        Orthanc::Toolbox::ComputeMD5(currentInstancesMd5, currentInstancesIds);
+        ComputeMD5OfSet(currentInstancesMd5, currentInstancesIds);
 
         if (currentInstancesMd5 == instancesMd5InCache)
         {
