summaryrefslogtreecommitdiffstats
path: root/share
diff options
context:
space:
mode:
authorKaz Kylheku <kaz@kylheku.com>2019-08-28 06:32:13 -0700
committerKaz Kylheku <kaz@kylheku.com>2019-08-28 06:32:13 -0700
commit565ef4bbe9e5c69cc482b93d484f2c587e76887d (patch)
treee4b1a02ec9ea609df52b51688c42005bc34877e2 /share
parent393f9629e6575aa3a48a9e21bfb48b75490cb5e9 (diff)
downloadtxr-565ef4bbe9e5c69cc482b93d484f2c587e76887d.tar.gz
txr-565ef4bbe9e5c69cc482b93d484f2c587e76887d.tar.bz2
txr-565ef4bbe9e5c69cc482b93d484f2c587e76887d.zip
unwind: bugfix: unhandled_ex not gc-protected.
Exception info stashed into the unhandled_ex global pseudo-frame is not protected from gc reclamation. This allows for use-after-free errors, that can reproduce if unwind-protect cleanup forms that go off during the processing of an unhandled exception trigger gc. The code which deals with unhandled exception, like error_trace, then works with exception arguments that are now objects on the free list. * unwind.c (uw_init): GC-protect the exception sym and arguments stored in unhandled_ex.
Diffstat (limited to 'share')
0 files changed, 0 insertions, 0 deletions