From b6955812c33d432557b93fe4638b411ff944334b Mon Sep 17 00:00:00 2001 From: Kaz Kylheku Date: Wed, 29 Jul 2015 22:36:19 -0700 Subject: * gc.c (finalize): Null out cobj handle after calling the destructor. This can catch some use-after-free errors. --- ChangeLog | 5 +++++ gc.c | 1 + 2 files changed, 6 insertions(+) diff --git a/ChangeLog b/ChangeLog index df1a8512..cbec2a8c 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,8 @@ +2015-07-29 Kaz Kylheku + + * gc.c (finalize): Null out cobj handle after calling the + destructor. This can catch some use-after-free errors. + 2015-07-29 Kaz Kylheku * stream.c (common_destroy): Function removed. diff --git a/gc.c b/gc.c index 4965066a..8a870cb2 100644 --- a/gc.c +++ b/gc.c @@ -254,6 +254,7 @@ static void finalize(val obj) return; case COBJ: obj->co.ops->destroy(obj); + obj->co.handle = 0; return; case BGNUM: mp_clear(mp(obj)); -- cgit v1.2.3