[erlang-questions] wxErlang and wxWidgets 3.0

Sergei Golovan <>
Wed Nov 20 19:57:36 CET 2013


On Mon, Nov 18, 2013 at 11:52 AM, Sergei Golovan <> wrote:
>
> 4) Segfault of dialyzer. dialyzer --wx segfaults immediately after I
> click any of the "Add", "Add Dir", or "Add Recursively" button. It
> works fine with 2.8.

The backtrace in GDB shows that the segfault happens inside wxWidgets
library. So, it might be a bug in wxWidgets and not in wxErlang.

% gdb -c core /usr/lib/erlang/erts-5.10.3/bin/beam.smp
GNU gdb (GDB) 7.6.1 (Debian 7.6.1-1)
Copyright (C) 2013 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.  Type "show copying"
and "show warranty" for details.
This GDB was configured as "x86_64-linux-gnu".
For bug reporting instructions, please see:
<http://www.gnu.org/software/gdb/bugs/>...
Reading symbols from /usr/lib/erlang/erts-5.10.3/bin/beam.smp...(no
debugging symbols found)...done.
[New LWP 14549]
[New LWP 14521]
[New LWP 14555]
[New LWP 14525]
[New LWP 14542]
[New LWP 14527]
[New LWP 14528]
[New LWP 14572]
[New LWP 14526]
[New LWP 14538]
[New LWP 14529]
[New LWP 14544]
[New LWP 14540]
[New LWP 14539]
[New LWP 14531]
[New LWP 14537]
[New LWP 14541]
[New LWP 14530]
[New LWP 14545]
[New LWP 14546]
[New LWP 14543]
[New LWP 14532]
[New LWP 14536]
[New LWP 14535]
[New LWP 14534]
[New LWP 14533]

warning: Could not load shared library symbols for linux-vdso.so.1.
Do you need "set solib-search-path" or "set sysroot"?
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".
Core was generated by `/usr/lib/erlang/erts-5.10.3/bin/beam.smp -P
1000000 -B -- -root /usr/lib/erlang'.
Program terminated with signal 11, Segmentation fault.
#0  0x00007f531d4361da in wxItemContainer::AssignNewItemClientData
(this=0x7f53080e0c00, pos=0, clientData=0x0,
    n=0, type=wxClientData_Void) at ../src/common/ctrlsub.cpp:253
253     ../src/common/ctrlsub.cpp: No such file or directory.
(gdb) bt
#0  0x00007f531d4361da in wxItemContainer::AssignNewItemClientData
(this=0x7f53080e0c00, pos=0, clientData=0x0,
    n=0, type=wxClientData_Void) at ../src/common/ctrlsub.cpp:253
#1  0x00007f531d43629a in wxItemContainer::DoInsertItemsInLoop
(this==0x7f53080e0c00, items=..., pos=1,
    =0, clientData==0x0,
type==wxClientData_Void)
    at ../src/common/ctrlsub.cpp:142
#2  0x00007f531d3e3084 in wxListBox::DoInsertItems
(this=0x7f53080e0990, items=..., pos=0, clientData=0x0,
    type=wxClientData_Void) at ../src/gtk/listbox.cpp:453
#3  0x00007f531e712a64 in wxItemContainer::Set(wxArrayString const&, void**) ()
   from /usr/lib/erlang/lib/wx-1.1/priv/wxe_driver.so
#4  0x00007f531e6d94a1 in WxeApp::wxe_dispatch(wxeCommand&) () from
/usr/lib/erlang/lib/wx-1.1/priv/wxe_driver.so
#5  0x00007f531e677a3b in WxeApp::dispatch(wxList*, int, int) () from
/usr/lib/erlang/lib/wx-1.1/priv/wxe_driver.so
#6  0x00007f531e677a97 in WxeApp::dispatch_cmds() () from
/usr/lib/erlang/lib/wx-1.1/priv/wxe_driver.so
#7  0x00007f531ccd691e in wxAppConsoleBase::CallEventHandler
(this=0x7f5308000980, handler=0x7f5308000980,
    functor=..., event=...) at ../src/common/appbase.cpp:623
#8  0x00007f531ce49a92 in wxEvtHandler::ProcessEventIfMatchesId
(entry=..., handler=<optimized out>, event=...)
    at ../src/common/event.cpp:1384
#9  0x00007f531ce49df6 in wxEvtHandler::SearchDynamicEventTable
(this==0x7f5308000980, event=...)
    at ../src/common/event.cpp:1743
#10 0x00007f531ce49e7e in wxEvtHandler::TryHereOnly
(this==0x7f5308000980, event=...)
    at ../src/common/event.cpp:1577
#11 0x00007f531ce49f13 in TryBeforeAndHere (event=...,
this==0x7f5308000980)
    at ../include/wx/event.h:3671
#12 wxEvtHandler::ProcessEventLocally (this==0x7f5308000980,
event=...) at ../src/common/event.cpp:1514
#13 0x00007f531ce49f75 in wxEvtHandler::ProcessEvent
(this=0x7f5308000980, event=...)
    at ../src/common/event.cpp:1487
#14 0x00007f531ccd6cf4 in wxAppConsoleBase::ProcessIdle
(this=0x7f5308000980) at ../src/common/appbase.cpp:388
#15 0x00007f531d415c43 in wxAppBase::ProcessIdle (this=<optimized
out>) at ../src/common/appcmn.cpp:366
#16 0x00007f531d36b92e in wxApp::DoIdle (this=0x7f5308000980) at
../src/gtk/app.cpp:138
#17 0x00007f531d36ba33 in wxapp_idle_callback () at ../src/gtk/app.cpp:107
#18 0x00007f5315c2aea6 in g_main_context_dispatch () from
/lib/x86_64-linux-gnu/libglib-2.0.so.0
#19 0x00007f5315c2b1f8 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#20 0x00007f5315c2b5fa in g_main_loop_run () from
/lib/x86_64-linux-gnu/libglib-2.0.so.0
#21 0x00007f5317af22e7 in gtk_main () from
/usr/lib/x86_64-linux-gnu/libgtk-x11-2.0.so.0
#22 0x00007f531d37e135 in wxGUIEventLoop::DoRun (this=0x7f5308071050)
at ../src/gtk/evtloop.cpp:65
#23 0x00007f531cd18c30 in wxEventLoopBase::Run (this=0x7f5308071050)
at ../src/common/evtloopcmn.cpp:78
#24 0x00007f531ccd89fd in wxAppConsoleBase::MainLoop
(this=0x7f5308000980) at ../src/common/appbase.cpp:334
#25 0x00007f531cd6483d in wxEntry (argc=<optimized out>,
argv=<optimized out>) at ../src/common/init.cpp:495
#26 0x00007f531e6775ef in wxe_main_loop(void*) () from
/usr/lib/erlang/lib/wx-1.1/priv/wxe_driver.so
#27 0x00000000005743c5 in ?? ()
#28 0x00007f533daa6e0e in start_thread () from
/lib/x86_64-linux-gnu/libpthread.so.0
#29 0x00007f533d5d40fd in clone () from /lib/x86_64-linux-gnu/libc.so.6
(gdb)


Cheers!
-- 
Sergei Golovan



More information about the erlang-questions mailing list