diff options
author | Matthias Andreas Benkard <matthias@benkard.de> | 2008-07-31 19:55:28 +0200 |
---|---|---|
committer | Matthias Andreas Benkard <matthias@benkard.de> | 2008-07-31 19:55:28 +0200 |
commit | 783810557ff05c3d52aedc03628df7b0d862948b (patch) | |
tree | aedc1a9771391a998c52b0037fb3bfba687cbdfa | |
parent | 372e2cf35074ee8347707e5e7ef73e092be5ca1e (diff) |
CATCH: On errors, do not try to disestablish a dynamic context that hasn't been established yet.
-rw-r--r-- | MLKInterpreter.m | 12 |
1 files changed, 6 insertions, 6 deletions
diff --git a/MLKInterpreter.m b/MLKInterpreter.m index 3cc3431..9ccc079 100644 --- a/MLKInterpreter.m +++ b/MLKInterpreter.m @@ -210,14 +210,14 @@ static MLKSymbol *_LOOP; NSArray *values; MLKDynamicContext *newctx; + catchTag = [[self eval:[[program cdr] car] + inLexicalContext:context + withEnvironment:lexenv + expandOnly:expandOnly] + objectAtIndex:0]; + NS_DURING { - catchTag = [[self eval:[[program cdr] car] - inLexicalContext:context - withEnvironment:lexenv - expandOnly:expandOnly] - objectAtIndex:0]; - if (!expandOnly) { newctx = [[MLKDynamicContext alloc] |