diff --git a/simpleeval.py b/simpleeval.py index 8724a99..e489835 100644 --- a/simpleeval.py +++ b/simpleeval.py @@ -367,7 +367,7 @@ def _eval_boolop(self, node): for value in node.values: vout = self._eval(value) if not vout: - return False + return vout return vout elif isinstance(node.op, ast.Or): for value in node.values: diff --git a/test_simpleeval.py b/test_simpleeval.py index 5f91ea2..5ce703e 100644 --- a/test_simpleeval.py +++ b/test_simpleeval.py @@ -46,6 +46,7 @@ def test_maths_with_ints(self): self.t("100 % 9", 1) def test_bools_and_or(self): + self.t('True and ""', "") self.t('True and False', False) self.t('True or False', True) self.t('False or False', False)