summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorThomas Heller <theller@ctypes.org>2008-10-18 21:33:44 +0000
committerThomas Heller <theller@ctypes.org>2008-10-18 21:33:44 +0000
commit3e06faec4fa7e6afc266ca83ebd5444b1ddbc04a (patch)
treed9414c202f683878c91d47f35150d189d36ad47a
parent14121854b6ffa1b3460fc3fe43ec9ee0c213b6d5 (diff)
downloadcpython-git-3e06faec4fa7e6afc266ca83ebd5444b1ddbc04a.tar.gz
Modify ctypes types with 'official' functions. Backport from trunk,
snv rev 59943 and 59946.
-rw-r--r--Misc/NEWS3
-rw-r--r--Modules/_ctypes/_ctypes.c2
2 files changed, 4 insertions, 1 deletions
diff --git a/Misc/NEWS b/Misc/NEWS
index a492d46131..e62bb7cf6b 100644
--- a/Misc/NEWS
+++ b/Misc/NEWS
@@ -92,6 +92,9 @@ Core and builtins
Library
-------
+- Assigning methods to ctypes.Structure and ctypes.Union subclasses
+ after creation of the class does now work correctly. See Issue #1700288.
+
- Issue #3895: _lsprof could be crashed with an external timer that did not
return a float when a Profiler object is garbage collected.
diff --git a/Modules/_ctypes/_ctypes.c b/Modules/_ctypes/_ctypes.c
index 51a9cf8bb8..e97f9bb074 100644
--- a/Modules/_ctypes/_ctypes.c
+++ b/Modules/_ctypes/_ctypes.c
@@ -410,7 +410,7 @@ static int
StructType_setattro(PyObject *self, PyObject *key, PyObject *value)
{
/* XXX Should we disallow deleting _fields_? */
- if (-1 == PyObject_GenericSetAttr(self, key, value))
+ if (-1 == PyType_Type.tp_setattro(self, key, value))
return -1;
if (value && PyString_Check(key) &&