From: Xiang Zhang Date: Mon, 20 Feb 2017 06:33:06 +0000 (+0800) Subject: bpo-29347: Fix possibly dereferencing undefined pointers when creating weakref object... X-Git-Tag: v3.5.4rc1~339 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=7c95a94c3ab41e4296e94335d66b2400ad16f052;p=python bpo-29347: Fix possibly dereferencing undefined pointers when creating weakref objects (#128) (#188) --- diff --git a/Misc/NEWS b/Misc/NEWS index c750d5c952..52c87d88c7 100644 --- a/Misc/NEWS +++ b/Misc/NEWS @@ -10,6 +10,9 @@ Release date: XXXX-XX-XX Core and Builtins ----------------- +- bpo-29347: Fixed possibly dereferencing undefined pointers + when creating weakref objects. + - bpo-29438: Fixed use-after-free problem in key sharing dict. - Issue #29319: Prevent RunMainFromImporter overwriting sys.path[0]. diff --git a/Objects/weakrefobject.c b/Objects/weakrefobject.c index 7e6f36458b..892798affe 100644 --- a/Objects/weakrefobject.c +++ b/Objects/weakrefobject.c @@ -24,6 +24,8 @@ init_weakref(PyWeakReference *self, PyObject *ob, PyObject *callback) { self->hash = -1; self->wr_object = ob; + self->wr_prev = NULL; + self->wr_next = NULL; Py_XINCREF(callback); self->wr_callback = callback; }