[Lcdproc] lcdproc-0.5.0 segfaults

Laurent B. lorijho@yes.lu
Thu May 4 14:30:01 2006


Yes of course. The client does NOT send menu_set_main "" , to set its 
own menu as the default one (it simpy makes NO use of the menu_set_main 
function at all). After it disconnected from LCDd (0.5.0) I can press 
the menu key to get to the server menu and it actually gets you there 
and , most important, LCDd does not terminate with signal 11 
segmantation fault.
So without touching menu_set_main LCDd works as expected here.

Laurent Baum.

Andrew Foss wrote:
> Bug to be fixed, I expect. Could you you confirm that you don't crash, 
> if you don't do the menu_set_main?
>
> Laurent B. wrote:
>> Yes the client actually does a menu_set_main "" to set its menu as 
>> the default one. This worked without complications prior to 0.5.0 
>> with lcdproc from CVS so I never thought that it would fail now 
>> because of menu_set_main. Thanks for the hint Andrew.
>>
>> So should clients then simply avoid setting their menu as the default 
>> because menu_set_item is evil or is there really a bug in the server 
>> code that needs to be resolved ??
>>
>> Andrew Foss wrote:
>>> sounds like something different than what I saw.
>>>
>>> Does your client do a "menu_set_main" command?
>>>
>>> It looks like it may be possible that after your client stops, the 
>>> main menu item is still set so when the main menu is attempted to be 
>>> brought up, it still thinks the main menu is the menu your client 
>>> set as main w/ the menu_set_main command?
>>>
>>> andrew
>>>
>>> Laurent B. wrote:
>>>> Hi Andrew,
>>>> LCDd crashes here (in the scenario described in my first mail)  
>>>> every time in foreground "-f true" or as daemon "-f false".
>>>> Andrew Foss wrote:
>>>>> I've seen it as well, I find if I don't run it through the 
>>>>> /etc/rc.d/init.d/ script using the "daemon" function it doesn't 
>>>>> fault, I added a trap to try and caatch it, but couldn't and 
>>>>> haven't had time to gdb myself, sorry.
>>>>>
>>>>> andrew
>>>>>
>>>>> lorijho@yes.lu wrote:
>>>>>> Hi to all.
>>>>>> I'm observing a crash of lcdproc-0.5.0. It can be reproduced like 
>>>>>> this:
>>>>>> A client (with menu) disconnects from LCDd. After that the "LCDproc
>>>>>> Server" screen appears again like it should. Showing "Client: 0  \n
>>>>>> Screens: 0" like always. But then when I press the menu button to 
>>>>>> enter
>>>>>> the server menu LCDd terminates with signal 11 segmantation 
>>>>>> fault. Can
>>>>>> be reproduced everytime.
>>>>>>
>>>>>> The backtrace:
>>>>>> Reading symbols from /lib/libdl.so.2...done.
>>>>>> Loaded symbols for /lib/libdl.so.2
>>>>>> Reading symbols from /lib/libc.so.6...done.
>>>>>> Loaded symbols for /lib/libc.so.6
>>>>>> Reading symbols from /lib/ld-linux.so.2...done.
>>>>>> Loaded symbols for /lib/ld-linux.so.2
>>>>>> Reading symbols from /usr/local/lib/lcdproc/lirc.so...done.
>>>>>> Loaded symbols for /usr/local/lib/lcdproc/lirc.so
>>>>>> Reading symbols from /usr/lib/liblirc_client.so.0...done.
>>>>>> Loaded symbols for /usr/lib/liblirc_client.so.0
>>>>>> Reading symbols from /usr/local/lib/lcdproc/CFontz.so...done.
>>>>>> Loaded symbols for /usr/local/lib/lcdproc/CFontz.so
>>>>>> #0  0x0804fbfb in menuitem_reset (item=0x9df2cb0) at menuitem.c:527
>>>>>> 527                     func = reset_table[item->type];
>>>>>> (gdb) bt
>>>>>> #0  0x0804fbfb in menuitem_reset (item=0x9df2cb0) at menuitem.c:527
>>>>>> #1  0x08054325 in menuscreen_switch_item (new_menuitem=0x9df2cb0) at
>>>>>> menuscreens.c:219
>>>>>> #2  0x0805450c in menuscreen_key_handler (key=0x9debe50 "/") at
>>>>>> menuscreens.c:390
>>>>>> #3  0x0804d57e in input_internal_key (key=0x9debe50 "/") at 
>>>>>> input.c:151
>>>>>> #4  0x0804d7c4 in handle_input () at input.c:117
>>>>>> #5  0x0804f4c7 in main (argc=539521829, argv=0x6d657469) at 
>>>>>> main.c:838
>>>>>>
>>>>>> On this system:
>>>>>> uname -a :
>>>>>> Linux 2.6.16-1.2096_FC5 #1 Wed Apr 19 05:14:36 EDT 2006 i686 
>>>>>> athlon i386
>>>>>> GNU/Linux
>>>>>>
>>>>>> gcc -v:
>>>>>> Using built-in specs.
>>>>>> Target: i386-redhat-linux
>>>>>> Configured with: ../configure --prefix=/usr --mandir=/usr/share/man
>>>>>> --infodir=/u sr/share/info --enable-shared --enable-threads=posix
>>>>>> --enable-checking=release - -with-system-zlib --enable-__cxa_atexit
>>>>>> --disable-libunwind-exceptions --enable- libgcj-multifile
>>>>>> --enable-languages=c,c++,objc,obj-c++,java,fortran,ada --enable
>>>>>> -java-awt=gtk --disable-dssi
>>>>>> --with-java-home=/usr/lib/jvm/java-1.4.2-gcj-1.4.2. 0/jre
>>>>>> --with-cpu=generic --host=i386-redhat-linux
>>>>>> Thread model: posix
>>>>>> gcc version 4.1.0 20060304 (Red Hat 4.1.0-3)
>>>>>>
>>>>>>
>>>>>> _______________________________________________
>>>>>> LCDproc mailing list
>>>>>> LCDproc@lists.omnipotent.net
>>>>>> http://lists.omnipotent.net/mailman/listinfo/lcdproc
>>>>>>   
>>>>> _______________________________________________
>>>>> LCDproc mailing list
>>>>> LCDproc@lists.omnipotent.net
>>>>> http://lists.omnipotent.net/mailman/listinfo/lcdproc
>>>>>
>>>>>
>>>>
>>> _______________________________________________
>>> LCDproc mailing list
>>> LCDproc@lists.omnipotent.net
>>> http://lists.omnipotent.net/mailman/listinfo/lcdproc
>>>
>>>
>>
>
>