[Python-Dev] pdb segfaults in 2.5 trunk? (original) (raw)
Tim Peters tim.peters at gmail.com
Tue Apr 11 03:33:08 CEST 2006
- Previous message: [Python-Dev] pdb segfaults in 2.5 trunk?
- Next message: [Python-Dev] DRAFT: python-dev summary for 2006-02-16 to 2006-02-28
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
[Greg Ewing]
However, if they're not exclusively for objects, having "Object" in the name would seem to be highly confusing, perhaps dangerously so. (Person A writes PyObjectAlloc(somechars), Person B writing the code to free it thinks "What??? That can't be right!" and uses PyMemFree.)
Given that it's been this way since the PyObject_ memory family was introduced, and a real Person B hasn't posted to complain about being led into temptation yet, sorry, I don't take this argument seriously. The comments in objimpl.h tell the truth, and it's really quite simple:
For allocating objects, use PyObject_{New, NewVar} instead whenever possible. The PyObject_{Malloc, Realloc, Free} family is exposed so that you can exploit Python's small-block allocator for non-object uses. If you must use these routines to allocate object memory, make sure the object gets initialized via PyObject_{Init, InitVar} after obtaining the raw memory.
- Previous message: [Python-Dev] pdb segfaults in 2.5 trunk?
- Next message: [Python-Dev] DRAFT: python-dev summary for 2006-02-16 to 2006-02-28
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]