Hello,
On my two computers, unloading and loading modules via the GUI gives a segfault.
Apparently, it's due to _e_configure_module_update_cb being called, as the
backtrace shows:

0x00007f32973f3af3 in select () from /lib/libc.so.6
(gdb) bt
#0  0x00007f32973f3af3 in select () from /lib/libc.so.6
#1  0x00007f329447382e in ?? () from /usr/lib/libxcb.so.1
#2  0x00007f329447559a in xcb_wait_for_event () from /usr/lib/libxcb.so.1
#3  0x00007f3297ced4a8 in ?? () from /usr/lib/libX11.so.6
#4  0x00007f3297ced85d in ?? () from /usr/lib/libX11.so.6
#5  0x00007f3297cee131 in _XReadEvents () from /usr/lib/libX11.so.6
#6  0x00007f3297cd4958 in XNextEvent () from /usr/lib/libX11.so.6
#7  0x000000000048516f in e_alert_show (
    text=0x4e2d48 "This is very bad. Enlightenment SEGV'd.\n\nThis is not meant 
to happen and is likely a sign of\na bug in Enlightenment or the libraries it 
relies\non. You can gdb attach to this process now to try\ndebug i"...) at 
e_alert.c:129
#8  0x000000000046f017 in e_sigseg_act (x=<value optimized out>, info=<value 
optimized out>, 
    data=<value optimized out>) at e_signals.c:69
#9  <signal handler called>
#10 eina_list_append (list=0x1, data=0x20fba50) at eina_list.c:566
#11 0x00000000004a0b56 in _queue_append (obj=0x1736e20, command=4, icon=0x0, 
label=0x0, header=0, func=0, 
    data=0x0, val=0x0, relative=0, use_relative=0, item=-1) at 
e_widget_ilist.c:222
#12 0x00000000004a0ced in e_widget_ilist_selected_set (obj=0x1, n=<value 
optimized out>)
    at e_widget_ilist.c:598
#13 0x00007f328e7bd4d9 in _e_configure_module_update_cb (data=0x1a68610, 
type=<value optimized out>, 
    event=<value optimized out>) at e_conf.c:519
#14 0x00007f32981f87d6 in _ecore_event_call () at ecore_events.c:439
#15 0x00007f32982014e5 in _ecore_main_loop_iterate_internal 
(once_only=-1740584304) at ecore_main.c:679
#16 0x00007f32982016f7 in ecore_main_loop_begin () at ecore_main.c:97
#17 0x000000000042ea5a in main (argc=1, argv=0x1550294) at e_main.c:1062

Looking at the source, I found that e_widget_ilist_selected_get is called with
eco->cat_list as an argument, in e_conf.c. However, cat_list has been a
widget_toolbar since November, so there's likely a mistake here and this call
should probably be replaced with e_widget_toolbar_item_select

However, I'm not sure how to fix this, as I'm not sure whether a call to
e_widget_toolbar_item_select is necessary (the correct category is still
selected without the function being called, eg when commenting out the whole
callback). Also, I'm not sure why the callback is called when loading modules,
in the first place.

I'd appreciate if anyone had pointers and could enlighten me on the matter.

Regards,
-- 
Albin Tonnerre

Attachment: signature.asc
Description: Digital signature

------------------------------------------------------------------------------
Register Now & Save for Velocity, the Web Performance & Operations 
Conference from O'Reilly Media. Velocity features a full day of 
expert-led, hands-on workshops and two days of sessions from industry 
leaders in dedicated Performance & Operations tracks. Use code vel09scf 
and Save an extra 15% before 5/3. http://p.sf.net/sfu/velocityconf
_______________________________________________
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel

Reply via email to