# HG changeset patch # User cmlenz # Date 1151963456 0 # Node ID 61a3a8b84888d8d8ff83b2f1db3c8842b4605f31 # Parent a2e014fb9a3db2115b8288b2e1e708cb30b5bff6 Catch `KeyError` exception when trying attribute access in expression evaluation. diff --git a/markup/eval.py b/markup/eval.py --- a/markup/eval.py +++ b/markup/eval.py @@ -125,7 +125,7 @@ return getattr(obj, node.attrname) try: return obj[node.attrname] - except TypeError: + except (KeyError, TypeError): return None def _visit_slice(self, node, data): @@ -265,7 +265,7 @@ return getattr(obj, node.attr) try: return obj[node.attr] - except TypeError: + except (KeyError, TypeError): return None def _visit_call(self, node, data):