From: Yury Selivanov Date: Fri, 8 Jun 2018 00:29:55 +0000 (-0400) Subject: bpo-33803: Fix a crash in hamt.c (#7504) X-Git-Tag: v3.8.0a1~1633 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=378c53cc3187dba57c7560ccc2557f516c8a7bc8;p=python bpo-33803: Fix a crash in hamt.c (#7504) --- diff --git a/Misc/NEWS.d/next/Core and Builtins/2018-06-07-20-18-38.bpo-33803.n-Nq6_.rst b/Misc/NEWS.d/next/Core and Builtins/2018-06-07-20-18-38.bpo-33803.n-Nq6_.rst new file mode 100644 index 0000000000..9cb8457ac4 --- /dev/null +++ b/Misc/NEWS.d/next/Core and Builtins/2018-06-07-20-18-38.bpo-33803.n-Nq6_.rst @@ -0,0 +1,2 @@ +Fix a crash in hamt.c caused by enabling GC tracking for an object that +hadn't all of its fields set to NULL. diff --git a/Python/hamt.c b/Python/hamt.c index 52171222b0..f8bce5961a 100644 --- a/Python/hamt.c +++ b/Python/hamt.c @@ -2476,6 +2476,8 @@ hamt_alloc(void) if (o == NULL) { return NULL; } + o->h_count = 0; + o->h_root = NULL; o->h_weakreflist = NULL; PyObject_GC_Track(o); return o;