Bug 509993 - segfault in python app using wxpython
Summary: segfault in python app using wxpython
Keywords:
Status: CLOSED WONTFIX
Alias: None
Product: Fedora
Classification: Fedora
Component: wxPython
Version: 11
Hardware: All
OS: Linux
low
medium
Target Milestone: ---
Assignee: Dan Horák
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2009-07-07 10:21 UTC by pankaj pandey
Modified: 2010-06-28 13:30 UTC (History)
2 users (show)

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2010-06-28 13:30:29 UTC
Type: ---
Embargoed:


Attachments (Terms of Use)
segfault causing file (3.54 KB, text/plain)
2009-07-07 10:24 UTC, pankaj pandey
no flags Details

Description pankaj pandey 2009-07-07 10:21:37 UTC
Description of problem:
A python program written in wxpython segfaults. 

Version-Release number of selected component (if applicable):
wxPython.x86_64 2.8.9.2-2.fc11

How reproducible:
Always

Steps to Reproduce:
1. save the attached code in a file (TableEditor_demo.py). It is a demo that comes with the Traits package python-Traits. It requires wx backend for traits http://pypi.python.org/pypi/TraitsBackendWX/3.1.0 (this is pure python)
2. Run the demo 
$ gdb python 
$ run TableEditor_demo.py
3. Click on any table entry which changes to a text field.
4. Click on close button.
5. Observe the segfault in gdb (As this is very small demo clicking on close button causes segfault. If another panel could be created, the segfault would be caused by clicking on any other panel apart from the one in which the table is located.)


Actual results:
This is the backtrace:
Program received signal SIGSEGV, Segmentation fault.
0x000000370ee80689 in wxGridCellEditor::Show(bool, wxGridCellAttr*) () from /usr/lib64/libwx_gtk2u_adv-2.8.so.0
(gdb) bt
#0  0x000000370ee80689 in wxGridCellEditor::Show(bool, wxGridCellAttr*) () from /usr/lib64/libwx_gtk2u_adv-2.8.so.0
#1  0x000000370ee873d6 in wxGrid::HideCellEditControl() () from /usr/lib64/libwx_gtk2u_adv-2.8.so.0
#2  0x000000370ee8c187 in wxGrid::~wxGrid() () from /usr/lib64/libwx_gtk2u_adv-2.8.so.0
#3  0x000000370f8f1813 in wxWindowBase::DestroyChildren() () from /usr/lib64/libwx_gtk2u_core-2.8.so.0
#4  0x000000370f7fa862 in wxWindow::~wxWindow() () from /usr/lib64/libwx_gtk2u_core-2.8.so.0
#5  0x000000370f919b87 in wxPanel::~wxPanel() () from /usr/lib64/libwx_gtk2u_core-2.8.so.0
#6  0x000000370f8f1813 in wxWindowBase::DestroyChildren() () from /usr/lib64/libwx_gtk2u_core-2.8.so.0
#7  0x000000370f7fa512 in wxWindow::~wxWindow() () from /usr/lib64/libwx_gtk2u_core-2.8.so.0
#8  0x000000370f8f1813 in wxWindowBase::DestroyChildren() () from /usr/lib64/libwx_gtk2u_core-2.8.so.0
#9  0x000000370f7fa862 in wxWindow::~wxWindow() () from /usr/lib64/libwx_gtk2u_core-2.8.so.0
#10 0x000000370f919b87 in wxPanel::~wxPanel() () from /usr/lib64/libwx_gtk2u_core-2.8.so.0
#11 0x000000370f8f1813 in wxWindowBase::DestroyChildren() () from /usr/lib64/libwx_gtk2u_core-2.8.so.0
#12 0x000000370f7fa862 in wxWindow::~wxWindow() () from /usr/lib64/libwx_gtk2u_core-2.8.so.0
#13 0x000000370f843baa in wxFrame::~wxFrame() () from /usr/lib64/libwx_gtk2u_core-2.8.so.0
#14 0x000000370f870db2 in wxAppBase::DeletePendingObjects() () from /usr/lib64/libwx_gtk2u_core-2.8.so.0
#15 0x000000370f870e7b in wxAppBase::ProcessIdle() () from /usr/lib64/libwx_gtk2u_core-2.8.so.0
#16 0x000000370f7ced93 in ?? () from /usr/lib64/libwx_gtk2u_core-2.8.so.0
#17 0x0000003235837afe in g_main_context_dispatch () from /lib64/libglib-2.0.so.0
#18 0x000000323583b1d8 in ?? () from /lib64/libglib-2.0.so.0
#19 0x000000323583b635 in g_main_loop_run () from /lib64/libglib-2.0.so.0
#20 0x00000030d03279c7 in gtk_main () from /usr/lib64/libgtk-x11-2.0.so.0
#21 0x000000370f7e6448 in wxEventLoop::Run() () from /usr/lib64/libwx_gtk2u_core-2.8.so.0
#22 0x000000370f870c7b in wxAppBase::MainLoop() () from /usr/lib64/libwx_gtk2u_core-2.8.so.0
#23 0x00007ffff0323ce7 in wxPyApp::MainLoop() () from /usr/lib64/python2.6/site-packages/wx-2.8-gtk2-unicode/wx/_core_.so
#24 0x00007ffff0395a48 in ?? () from /usr/lib64/python2.6/site-packages/wx-2.8-gtk2-unicode/wx/_core_.so
#25 0x00000030be043ac3 in PyObject_Call () from /usr/lib64/libpython2.6.so.1.0
#26 0x00000030be0dbdb1 in PyEval_EvalFrameEx () from /usr/lib64/libpython2.6.so.1.0
#27 0x00000030be0def85 in PyEval_EvalCodeEx () from /usr/lib64/libpython2.6.so.1.0
#28 0x00000030be06db7f in ?? () from /usr/lib64/libpython2.6.so.1.0
#29 0x00000030be043ac3 in PyObject_Call () from /usr/lib64/libpython2.6.so.1.0
#30 0x00000030be05897f in ?? () from /usr/lib64/libpython2.6.so.1.0
#31 0x00000030be043ac3 in PyObject_Call () from /usr/lib64/libpython2.6.so.1.0
#32 0x00000030be0dcb0e in PyEval_EvalFrameEx () from /usr/lib64/libpython2.6.so.1.0
#33 0x00000030be0de699 in PyEval_EvalFrameEx () from /usr/lib64/libpython2.6.so.1.0
#34 0x00000030be0def85 in PyEval_EvalCodeEx () from /usr/lib64/libpython2.6.so.1.0
#35 0x00000030be06db7f in ?? () from /usr/lib64/libpython2.6.so.1.0
#36 0x00000030be043ac3 in PyObject_Call () from /usr/lib64/libpython2.6.so.1.0
#37 0x00000030be05897f in ?? () from /usr/lib64/libpython2.6.so.1.0
#38 0x00000030be043ac3 in PyObject_Call () from /usr/lib64/libpython2.6.so.1.0
#39 0x00000030be09b39e in ?? () from /usr/lib64/libpython2.6.so.1.0
#40 0x00000030be099e08 in ?? () from /usr/lib64/libpython2.6.so.1.0
#41 0x00000030be043ac3 in PyObject_Call () from /usr/lib64/libpython2.6.so.1.0
#42 0x00000030be0dcb0e in PyEval_EvalFrameEx () from /usr/lib64/libpython2.6.so.1.0
#43 0x00000030be0de699 in PyEval_EvalFrameEx () from /usr/lib64/libpython2.6.so.1.0
#44 0x00000030be0def85 in PyEval_EvalCodeEx () from /usr/lib64/libpython2.6.so.1.0
#45 0x00000030be0dd718 in PyEval_EvalFrameEx () from /usr/lib64/libpython2.6.so.1.0
#46 0x00000030be0def85 in PyEval_EvalCodeEx () from /usr/lib64/libpython2.6.so.1.0
#47 0x00000030be0dd718 in PyEval_EvalFrameEx () from /usr/lib64/libpython2.6.so.1.0
#48 0x00000030be0def85 in PyEval_EvalCodeEx () from /usr/lib64/libpython2.6.so.1.0
#49 0x00000030be0df092 in PyEval_EvalCode () from /usr/lib64/libpython2.6.so.1.0
#50 0x00000030be0fa1ac in ?? () from /usr/lib64/libpython2.6.so.1.0
#51 0x00000030be0fa280 in PyRun_FileExFlags () from /usr/lib64/libpython2.6.so.1.0
#52 0x00000030be0fb67e in PyRun_SimpleFileExFlags () from /usr/lib64/libpython2.6.so.1.0
#53 0x00000030be107dc9 in Py_Main () from /usr/lib64/libpython2.6.so.1.0
#54 0x000000308f21ea2d in __libc_start_main () from /lib64/libc.so.6
#55 0x0000000000400649 in _start ()
(gdb) quit


Expected results:
Program should run normally.
This used to run normally in previous versions of wxpython (in F10)
However i dont know wxpython well enough to attach a self contained test case. But i believe a python app on itself should not be able to segfault, so the problem is either with wx or wxpython.

Comment 1 pankaj pandey 2009-07-07 10:24:18 UTC
Created attachment 350769 [details]
segfault causing file

This file causes segfault when close button is clicked after clicking on an entry in the table

Comment 2 Fedora Update System 2010-01-16 18:03:33 UTC
wxPython-2.8.10.1-1.fc12 has been submitted as an update for Fedora 12.
http://admin.fedoraproject.org/updates/wxPython-2.8.10.1-1.fc12

Comment 3 Fedora Update System 2010-01-16 18:04:03 UTC
wxPython-2.8.10.1-1.fc11 has been submitted as an update for Fedora 11.
http://admin.fedoraproject.org/updates/wxPython-2.8.10.1-1.fc11

Comment 4 Fedora Update System 2010-02-02 01:14:04 UTC
wxPython-2.8.10.1-1.fc11 has been pushed to the Fedora 11 stable repository.  If problems still persist, please make note of it in this bug report.

Comment 5 Fedora Update System 2010-02-02 01:17:41 UTC
wxPython-2.8.10.1-1.fc12 has been pushed to the Fedora 12 stable repository.  If problems still persist, please make note of it in this bug report.

Comment 6 Bug Zapper 2010-04-27 15:31:30 UTC
This message is a reminder that Fedora 11 is nearing its end of life.
Approximately 30 (thirty) days from now Fedora will stop maintaining
and issuing updates for Fedora 11.  It is Fedora's policy to close all
bug reports from releases that are no longer maintained.  At that time
this bug will be closed as WONTFIX if it remains open with a Fedora 
'version' of '11'.

Package Maintainer: If you wish for this bug to remain open because you
plan to fix it in a currently maintained version, simply change the 'version' 
to a later Fedora version prior to Fedora 11's end of life.

Bug Reporter: Thank you for reporting this issue and we are sorry that 
we may not be able to fix it before Fedora 11 is end of life.  If you 
would still like to see this bug fixed and are able to reproduce it 
against a later version of Fedora please change the 'version' of this 
bug to the applicable version.  If you are unable to change the version, 
please add a comment here and someone will do it for you.

Although we aim to fix as many bugs as possible during every release's 
lifetime, sometimes those efforts are overtaken by events.  Often a 
more recent Fedora release includes newer upstream software that fixes 
bugs or makes them obsolete.

The process we are following is described here: 
http://fedoraproject.org/wiki/BugZappers/HouseKeeping

Comment 7 Bug Zapper 2010-06-28 13:30:29 UTC
Fedora 11 changed to end-of-life (EOL) status on 2010-06-25. Fedora 11 is 
no longer maintained, which means that it will not receive any further 
security or bug fix updates. As a result we are closing this bug.

If you can reproduce this bug against a currently maintained version of 
Fedora please feel free to reopen this bug against that version.

Thank you for reporting this bug and we are sorry it could not be fixed.


Note You need to log in before you can comment on or make changes to this bug.