Segfault when closing footprint editor with keyboard shortcut
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
KiCad |
Fix Released
|
Critical
|
Maciej Suminski |
Bug Description
Application: kicad
Version: (2015-08-25 BZR 6127)-product debug build
wxWidgets: Version 3.0.2 (debug,
Platform: Linux 4.1.5-1-ARCH x86_64, 64 bit, Little endian, wxGTK
Boost version: 1.58.0
-------
I'm getting a segfault when I close the footprint editor with the keyboard shortcut (Ctrl-Q for me). Doesn't matter whether its launched from the main KiCad window, or from within Pcbnew. Happens whether or not I've loaded a library/footprint, or close it as soon as it opens.
This does not occur if I use the File -> Close menu. To my inexperienced eyes, this behaviour and the traceback suggest something in the shortcut handler is doing some cleanup that the main close code does not expect to have already run.
This only occurs in GAL mode. I cannot get it to happen with Pcbnew, so it seems like something specific to the footprint editor.
First, an assert is triggered -- the traceback wxWidgets gives for the assert is:
ASSERT INFO
/home/blair/
BACKTRACE:
[1] wxAppConsoleBas
[2] wxEvtHandler:
[3] wxEvtHandler:
[4] wxEvtHandler:
[5] wxEvtHandler:
[6] wxEvtHandler:
[7] wxEvtHandler:
[8] wxAppConsoleBas
[9] wxApp::DoIdle()
[10] g_main_
[11] g_main_loop_run
[12] gtk_main
[13] wxGUIEventLoop:
[14] wxEventLoopBase
[15] wxAppConsoleBas
[16] wxSizer:
[17] wxEntry(int&, wchar_t**)
[18] __libc_start_main
[19] _start
Then the segfault occurs. Backtrace from the coredump is as follows:
Program terminated with signal SIGSEGV, Segmentation fault.
#0 0x00007f6d6d83dd96 in KIGFX::
226 delete clientDC;
(gdb) bt
#0 0x00007f6d6d83dd96 in KIGFX::
#1 0x00007f6d6d81b387 in EDA_DRAW_
#2 0x00007f6d79c6393e in wxAppConsoleBas
#3 0x00007f6d79dfb2e8 in wxEvtHandler:
#4 0x00007f6d79dfb6de in wxEvtHandler:
#5 0x00007f6d79dfb76e in wxEvtHandler:
#6 0x00007f6d79dfb833 in wxEvtHandler:
#7 0x00007f6d79dfb895 in wxEvtHandler:
#8 0x00007f6d79dfc2fa in wxEvtHandler:
#9 0x00007f6d79c66987 in wxAppConsoleBas
#10 0x00007f6d7a302e52 in wxApp::DoIdle() () from /usr/lib/
#11 0x00007f6d7a302f43 in ?? () from /usr/lib/
#12 0x00007f6d77b2190d in g_main_
#13 0x00007f6d77b21ce0 in ?? () from /usr/lib/
#14 0x00007f6d77b22002 in g_main_loop_run () from /usr/lib/
#15 0x00007f6d7888e467 in gtk_main () from /usr/lib/
#16 0x00007f6d7a324485 in wxGUIEventLoop:
#17 0x00007f6d79ca8c53 in wxEventLoopBase
#18 0x00007f6d79c67b46 in wxAppConsoleBas
#19 0x000000000041c369 in APP_SINGLE_
#20 0x00007f6d79cfe8f0 in wxEntry(int&, wchar_t**) () from /usr/lib/
#21 0x0000000000415222 in main (argc=1, argv=<optimized out>) at /home/blair/
Related branches
Changed in kicad: | |
status: | New → In Progress |
assignee: | nobody → Maciej Sumiński (orsonmmz) |
Changed in kicad: | |
status: | In Progress → Won't Fix |
status: | Won't Fix → Fix Committed |
Changed in kicad: | |
status: | Fix Committed → Fix Released |