summaryrefslogtreecommitdiffstats
path: root/ChangeLog
diff options
context:
space:
mode:
authorKaz Kylheku <kaz@kylheku.com>2011-12-20 18:56:14 -0800
committerKaz Kylheku <kaz@kylheku.com>2011-12-20 18:56:14 -0800
commit43b3c4a7879e73ef370e696ee7531175857ae554 (patch)
treec50c970a1b58712146eea4c5b17e92509fa9b483 /ChangeLog
parent1c9044fb047cadde7e4efa2b110f6a6a80962d1a (diff)
downloadtxr-43b3c4a7879e73ef370e696ee7531175857ae554.tar.gz
txr-43b3c4a7879e73ef370e696ee7531175857ae554.tar.bz2
txr-43b3c4a7879e73ef370e696ee7531175857ae554.zip
Bug #35137
* unwind.c (uw_unwind_to_exit_point): When jumping to a catch frame, do not mark it invisible. * unwind.h (uw_catch): Flip the matches to nil so that this catch frame can no longer be identified as an unwind point by uw_throw, and thus will not be re-entered for the purposes of handling an exception. It remains visible for the purposes of running the clean up code. (uw_unwind): Prior to executing cleanup forms, flip the visibility to 0. This means that the frame will no longer be re-entered for any reason.
Diffstat (limited to 'ChangeLog')
-rw-r--r--ChangeLog16
1 files changed, 16 insertions, 0 deletions
diff --git a/ChangeLog b/ChangeLog
index f486688c..c7941624 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,21 @@
2011-12-20 Kaz Kylheku <kaz@kylheku.com>
+ Bug #35137
+
+ * unwind.c (uw_unwind_to_exit_point): When jumping to a catch frame,
+ do not mark it invisible.
+
+ * unwind.h (uw_catch): Flip the matches to nil so that this catch
+ frame can no longer be identified as an unwind point by uw_throw,
+ and thus will not be re-entered for the purposes of handling
+ an exception. It remains visible for the purposes of running the
+ clean up code.
+ (uw_unwind): Prior to executing cleanup forms, flip the visibility
+ to 0. This means that the frame will no longer be re-entered
+ for any reason.
+
+2011-12-20 Kaz Kylheku <kaz@kylheku.com>
+
Streamlining exception handling macros a little bit.
* eval.c (op_unwind_protect): Use uw_simple_catch_begin,