PySide Bugzilla Closed for New Bugs

PySide is now a Qt Add-on and uses the Qt Project's JIRA Bug Tracker instead of this Bugzilla instance. This Bugzilla is left for reference purposes.

Bug 1126 - Segfault when exception is raised in signalInstanceDisconnect
: Segfault when exception is raised in signalInstanceDisconnect
Status: RESOLVED FIXED
Product: PySide
Classification: Unclassified
Component: PySide
: HEAD
: PC All
: P2 major
Assigned To: Paulo Alcantara
:
:
:
  Show dependency treegraph
 
Reported: 2012-01-19 22:54 EET by John Ehresman
Modified: 2012-02-28 06:04 EET (History)
9 users (show)

See Also:


Attachments
Use Py_XDECREF (651 bytes, application/octet-stream)
2012-01-19 22:54 EET, John Ehresman
Details
Test case which segfaults (393 bytes, text/x-python-script)
2012-02-27 00:34 EET, John Ehresman
Details

Note You need to log in before you can comment on or make changes to this bug.
Description John Ehresman 2012-01-19 22:54:22 EET
Created attachment 479 [details]
Use Py_XDECREF

signalInstanceDisconnect segfaults when python method raises an exception and
returns NULL
Comment 1 Paulo Alcantara 2012-02-26 07:25:06 EET
Hi John,

(In reply to comment #0)
> Created attachment 479 [details]
> Use Py_XDECREF
> 
> signalInstanceDisconnect segfaults when python method raises an exception and
> returns NULL

Could you provide an unit test that'd possibly reproduce this segfault ?


           - Paulo Alcantara
Comment 2 John Ehresman 2012-02-27 00:34:23 EET
Created attachment 495 [details]
Test case which segfaults
Comment 3 Paulo Alcantara 2012-02-27 02:18:13 EET
Hi John,

(In reply to comment #2)
> Created attachment 495 [details]
> Test case which segfaults

Thanks for the attached unit test.


           - Paulo Alcantara
Comment 4 Paulo Alcantara 2012-02-28 04:56:07 EET
Hi John,

Which version of Python are you using for reproducing this issue ? I've just
run your script under Python version 2.7 with PySide from git HEAD and it
doesn't segfault either. Also, are you running it with PySide from git HEAD ?


           - Paulo Alcantara
Comment 5 John Ehresman 2012-02-28 05:19:43 EET
I'm also having trouble getting it to segfault, but the code is unchanged in
signalInstanceDisconnect.  PyObject_CallObject at line 465 can return NULL
(there's nothing in the api that prevents a NULL return) and then it will
segfault.
Comment 6 Paulo Alcantara 2012-02-28 06:04:26 EET
Hi John,

(Please, ignore my last comment)

Thanks for the report.

This bug has been fixed on PySide commit
9261c52418a957e9ddc09b17ab08de7e2fcf5378.


           - Paulo Alcantara