summaryrefslogtreecommitdiff
path: root/odoo/osv/expression.py
diff options
context:
space:
mode:
Diffstat (limited to 'odoo/osv/expression.py')
-rw-r--r--odoo/osv/expression.py5
1 files changed, 4 insertions, 1 deletions
diff --git a/odoo/osv/expression.py b/odoo/osv/expression.py
index 6aa0c88ab5c..ab4b546fa16 100644
--- a/odoo/osv/expression.py
+++ b/odoo/osv/expression.py
@@ -310,7 +310,10 @@ def distribute_not(domain):
if negate:
left, operator, right = token
if operator in TERM_OPERATORS_NEGATION:
- result.append((left, TERM_OPERATORS_NEGATION[operator], right))
+ if token in (TRUE_LEAF, FALSE_LEAF):
+ result.append(FALSE_LEAF if token == TRUE_LEAF else TRUE_LEAF)
+ else:
+ result.append((left, TERM_OPERATORS_NEGATION[operator], right))
else:
result.append(NOT_OPERATOR)
result.append(token)