diff options
author | Tim Peters <tim.peters@gmail.com> | 2001-10-06 19:04:01 (GMT) |
---|---|---|
committer | Tim Peters <tim.peters@gmail.com> | 2001-10-06 19:04:01 (GMT) |
commit | 406fe3b1c029e2526f4aeab070cc93177512f164 (patch) | |
tree | ff9400cc654378fbf1c57fadc34a32c5d05533c9 /Include | |
parent | 7254e5a3edd85563d333ba5aa2978d7cd7daa96a (diff) | |
download | cpython-406fe3b1c029e2526f4aeab070cc93177512f164.zip cpython-406fe3b1c029e2526f4aeab070cc93177512f164.tar.gz cpython-406fe3b1c029e2526f4aeab070cc93177512f164.tar.bz2 |
Repaired the debug Windows deaths in test_descr, by allocating enough
pad memory to properly align the __dict__ pointer in all cases.
gcmodule.c/objimpl.h, _PyObject_GC_Malloc:
+ Added a "padding" argument so that this flavor of malloc can allocate
enough bytes for alignment padding (it can't know this is needed, but
its callers do).
typeobject.c, PyType_GenericAlloc:
+ Allocated enough bytes to align the __dict__ pointer.
+ Sped and simplified the round-up-to-PTRSIZE logic.
+ Added blank lines so I could parse the if/else blocks <0.7 wink>.
Diffstat (limited to 'Include')
-rw-r--r-- | Include/objimpl.h | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/Include/objimpl.h b/Include/objimpl.h index 0fd6652..e24d42e 100644 --- a/Include/objimpl.h +++ b/Include/objimpl.h @@ -230,7 +230,8 @@ extern DL_IMPORT(void) _PyObject_Del(PyObject *); #define PyObject_IS_GC(o) (PyType_IS_GC((o)->ob_type) && \ ((o)->ob_type->tp_is_gc == NULL || (o)->ob_type->tp_is_gc(o))) -extern DL_IMPORT(PyObject *) _PyObject_GC_Malloc(PyTypeObject *, int); +extern DL_IMPORT(PyObject *) _PyObject_GC_Malloc(PyTypeObject *, + int nitems, size_t padding); extern DL_IMPORT(PyVarObject *) _PyObject_GC_Resize(PyVarObject *, int); #define PyObject_GC_Resize(type, op, n) \ |