Mercurial > hg > orthanc
comparison OrthancServer/OrthancMoveRequestHandler.cpp @ 3697:5331918773e7
Fix issue #154 (Matching against list of UID-s by C-MOVE)
author | Sebastien Jodogne <s.jodogne@gmail.com> |
---|---|
date | Wed, 26 Feb 2020 11:57:59 +0100 |
parents | 94f4a18a79cc |
children | 5cbbf14e516b |
comparison
equal
deleted
inserted
replaced
3696:b7087f928050 | 3697:5331918773e7 |
---|---|
239 return false; | 239 return false; |
240 } | 240 } |
241 else | 241 else |
242 { | 242 { |
243 const std::string& content = value.GetContent(); | 243 const std::string& content = value.GetContent(); |
244 context_.GetIndex().LookupIdentifierExact(publicIds, level, tag, content); | 244 |
245 /** | |
246 * This tokenization fixes issue 154 ("Matching against list of | |
247 * UID-s by C-MOVE"). | |
248 * https://bitbucket.org/sjodogne/orthanc/issues/154/ | |
249 **/ | |
250 | |
251 std::vector<std::string> tokens; | |
252 Toolbox::TokenizeString(tokens, content, '\\'); | |
253 for (size_t i = 0; i < tokens.size(); i++) | |
254 { | |
255 std::vector<std::string> matches; | |
256 context_.GetIndex().LookupIdentifierExact(matches, level, tag, tokens[i]); | |
257 | |
258 // Concatenate "publicIds" with "matches" | |
259 publicIds.insert(publicIds.end(), matches.begin(), matches.end()); | |
260 } | |
261 | |
245 return true; | 262 return true; |
246 } | 263 } |
247 } | 264 } |
248 | 265 |
249 | 266 |