Mercurial > hg > orthanc
diff OrthancServer/Sources/ServerContext.cpp @ 5669:f690568f0325
Fix C-Find queries not returning computed tags in very specific use-cases
author | Alain Mazy <am@orthanc.team> |
---|---|
date | Fri, 05 Jul 2024 19:18:23 +0200 |
parents | f7adfb22e20e |
children | 56859a7ffa99 0c218d90096e |
line wrap: on
line diff
--- a/OrthancServer/Sources/ServerContext.cpp Wed Jul 03 17:50:59 2024 +0200 +++ b/OrthancServer/Sources/ServerContext.cpp Fri Jul 05 19:18:23 2024 +0200 @@ -2578,7 +2578,13 @@ Toolbox::GetMissingsFromSet(missingTags, requestedTags, retrievedTags); // if all possible tags have been read, no need to get them from DB anymore - if (missingTags.size() == 0 || DicomMap::HasOnlyComputedTags(missingTags)) + if (missingTags.size() > 0 && DicomMap::HasOnlyComputedTags(missingTags)) + { + resource.missingRequestedTags_ = missingTags; + ComputeTags(resource, *this, publicId, level, requestedTags); + return true; + } + else if (missingTags.size() == 0) { expandFlags = static_cast<ExpandResourceFlags>(expandFlags & ~ExpandResourceFlags_IncludeMainDicomTags); }