changeset 4c4ee2bfea5b in tryton:5.0
details: https://hg.tryton.org/tryton?cmd=changeset;node=4c4ee2bfea5b
description:
        Detect all wild cards and escaped wild cards in likify

        issue10020
        review320611002
        (grafted from 7fb5bf95e082b5cf735b1c46c5c6099b6ac752aa)
diffstat:

 tryton/common/domain_parser.py |  6 +++---
 1 files changed, 3 insertions(+), 3 deletions(-)

diffs (19 lines):

diff -r 09b75e2f7ef5 -r 4c4ee2bfea5b tryton/common/domain_parser.py
--- a/tryton/common/domain_parser.py    Fri Jan 29 00:04:29 2021 +0100
+++ b/tryton/common/domain_parser.py    Wed Feb 03 19:30:13 2021 +0100
@@ -107,12 +107,12 @@
     assert list(group_operator(iter(['a', '>', '=', '=']))) == ['a', '>=', '=']
 
 
-def likify(value):
+def likify(value, escape='\\'):
     "Add % if needed"
     if not value:
         return '%'
-    escaped = value.replace('%%', '__')
-    if '%' in escaped:
+    escaped = value.replace(escape + '%', '').replace(escape + '_', '')
+    if '%' in escaped or '_' in escaped:
         return value
     else:
         return '%' + value + '%'

Reply via email to