From: Guido van Rossum Date: Wed, 19 Feb 2003 03:52:47 +0000 (+0000) Subject: Backport of rev 2.199 from trunk. X-Git-Tag: v2.2.3c1~134 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=841569f9a363e1562557c19901e3c8670c942d4a;p=thirdparty%2FPython%2Fcpython.git Backport of rev 2.199 from trunk. PyObject_Generic{Get,Set}Attr: Don't access tp_descr_{get,set} of a descriptor without checking the flag bits of the descriptor's type. While we know that the main type (the type of the object whose attribute is being accessed) has all the right flag bits (or else PyObject_Generic{Get,Set}Attr wouldn't be called), we don't know that for its class attributes! --- diff --git a/Misc/NEWS b/Misc/NEWS index 6b1d0094a665..dc77362cd083 100644 --- a/Misc/NEWS +++ b/Misc/NEWS @@ -2,6 +2,11 @@ What's New in Python 2.2.3 ? Release date: XX-XXX-2003 ============================ +- Fixed two places in PyObject_Generic{Get,Set}Attr() where the + tp_descr_{get,set} slot of a descriptor's type was accessed without + checking tp_flags whether those slots actually exist. This could + cause segfaults in Zope. + - The imp module now has ways to acquire and release the "import lock": imp.acquire_lock() and imp.release_lock(). Note: this is a reentrant lock, so releasing the lock only truly releases it when