# HG changeset patch # User Alain Mazy # Date 1636975364 -3600 # Node ID 389c037387eafebad3829d3df7d4dbbabd0dd9fd # Parent 5afa19dc8562f41c325f4af982f58e218a31dff6 Escaping '[' & ']' (change necessary only for MSSQL but this does not impact PG and MySQL plugins that were already matching angle brackets correctly) diff -r 5afa19dc8562 -r 389c037387ea .hgignore --- a/.hgignore Thu Aug 12 13:27:41 2021 +0200 +++ b/.hgignore Mon Nov 15 12:22:44 2021 +0100 @@ -1,4 +1,7 @@ build* PostgreSQL/CMakeLists.txt.user PostgreSQL/ThirdPartyDownloads/ +Odbc/ThirdPartyDownloads/ +MySQL/ThirdPartyDownloads/ +.vscode/ diff -r 5afa19dc8562 -r 389c037387ea Odbc/NEWS --- a/Odbc/NEWS Thu Aug 12 13:27:41 2021 +0200 +++ b/Odbc/NEWS Mon Nov 15 12:22:44 2021 +0100 @@ -1,6 +1,9 @@ Pending changes in the mainline =============================== +* Now escaping '[' & ']' characters in lookup queries to allow matching e.g + PatientName containing angle brackets + Release 1.0 (2021-08-12) ======================== diff -r 5afa19dc8562 -r 389c037387ea Resources/Orthanc/Databases/ISqlLookupFormatter.cpp --- a/Resources/Orthanc/Databases/ISqlLookupFormatter.cpp Thu Aug 12 13:27:41 2021 +0200 +++ b/Resources/Orthanc/Databases/ISqlLookupFormatter.cpp Mon Nov 15 12:22:44 2021 +0100 @@ -172,6 +172,14 @@ { escaped += "_"; } + else if (value[i] == '[') + { + escaped += "\\["; + } + else if (value[i] == ']') + { + escaped += "\\]"; + } else if (value[i] == '%') { escaped += "\\%";