[Python-Dev] segmentation fault in Python 2.5b3 (trunk:51066)
Thomas Heller
theller at python.net
Thu Aug 3 15:46:28 CEST 2006
Ralf Schmitt schrieb:
> Hi all,
>
> I've been trying to port our software to python 2.5.
> unfortunately I'm getting constantly hit by segfaults.
>
> I've boiled it down to the following code:
>
> rs at schrotti:~/bug$ cat t.py
> import array
>
> class Indexer(object):
> maximumForwardSize = property(array.array.fromstring)
> rs at schrotti:~/bug$ python t.py
> Segmentation fault
Confirmed under Windows. Here's the problem (Objects/descrobject.c, near line 1200,
in property_init(...):
/* if no docstring given and the getter has one, use that one */
if ((doc == NULL || doc == Py_None) && get != NULL &&
PyObject_HasAttrString(get, "__doc__")) {
if (!(get_doc = PyObject_GetAttrString(get, "__doc__")))
return -1;
Py_DECREF(get_doc); /* it is INCREF'd again below */
^^^^^^^^^^^^^^^^^^
doc = get_doc;
}
Py_XINCREF(get);
Py_XINCREF(set);
Py_XINCREF(del);
Py_XINCREF(doc);
If the refcount of get_doc drops to zero in the Py_DECREF(), the Py_XINCREF()
shortly after doesn't help ;-).
Thomas
More information about the Python-Dev
mailing list