Opened 12 years ago
Closed 12 years ago
#9151 closed bug (fixed)
Deskbar crashes when it moved to bottom of screen.
Reported by: | mt | Owned by: | jscipione |
---|---|---|---|
Priority: | normal | Milestone: | R1 |
Component: | Applications/Deskbar | Version: | R1/Development |
Keywords: | Cc: | ||
Blocked By: | Blocking: | ||
Platform: | All |
Description
When I try to move Deskbar to bottom of the screen, it crashes. gcc4 / gcc2 hybrid, hrev44830, real hardware.
KERN: debug_server: Thread 196 entered the debugger: Segment violation KERN: stack trace, current PC 0x2255be _ZN11TBarMenuBar19RemoveSeperatorItemEv + 0x4c: KERN: (0x780f6b0c) 0x226af4 _ZN8TBarView16PlaceDeskbarMenuEv + 0x1ea KERN: (0x780f6b9c) 0x227c3e _ZN8TBarView12_ChangeStateEP8BMessage + 0x104 KERN: (0x780f6bdc) 0x228c21 _ZN8TBarView15MessageReceivedEP8BMessage + 0xa1 KERN: (0x780f6c2c) 0x332b72 _ZN7BLooper15DispatchMessageEP8BMessageP8BHandler + 0x50 KERN: (0x780f6c4c) 0x3ebbb4 _ZN7BWindow15DispatchMessageEP8BMessageP8BHandler + 0x1766 KERN: (0x780f6f2c) 0x3e74c6 _ZN7BWindow11task_looperEv + 0x216 KERN: (0x780f6f9c) 0x333e8e _ZN7BLooper7_task0_EPv + 0x30 KERN: (0x780f6fbc) 0x6bd247 thread_entry + 0x1d KERN: debug_server: Killing team 128 (/boot/system/Deskbar)
Attachments (1)
Change History (8)
by , 12 years ago
Attachment: | syslog.txt added |
---|
comment:1 by , 12 years ago
Owner: | changed from | to
---|---|
Status: | new → assigned |
Was that with a full rebuild? I had this same problem as well until I rebuilt libbe.so.
comment:2 by , 12 years ago
What I need is a backtrace (by typing bt in the crash window) not a syslog. Also, it is likely that you need to rebuild libbe.so as anevilyak suggested. I assure you that I have tested Deskbar in all modes including bottom of the screen and it should work.
comment:3 by , 12 years ago
Hi, I rebuild hrev44830, but Deskbar still crashes. backtrace is added.
GNU gdb 6.3 Copyright 2004 Free Software Foundation, Inc. GDB is free software, covered by the GNU General Public License, and you are welcome to change it and/or distribute copies of it under certain conditions. Type "show copying" to see the conditions. There is absolutely no warranty for GDB. Type "show warranty" for details. This GDB was configured as "i586-pc-haiku"...(no debugging symbols found) [tcsetpgrp failed in terminal_inferior: Invalid Argument] Thread 196 caused an exception: Segment violation Reading symbols from /boot/system/runtime_loader...done. Loaded symbols for /boot/system/runtime_loader Reading symbols from /boot/system/lib/libbe.so...done. Loaded symbols for /boot/system/lib/libbe.so Reading symbols from /boot/system/lib/libtracker.so...done. Loaded symbols for /boot/system/lib/libtracker.so Reading symbols from /boot/system/lib/libsupc++.so...done. Loaded symbols for /boot/system/lib/libsupc++.so Reading symbols from /boot/system/lib/libroot.so...done. Loaded symbols for /boot/system/lib/libroot.so Reading symbols from /boot/system/lib/libstdc++.so...done. Loaded symbols for /boot/system/lib/libstdc++.so Reading symbols from /boot/system/lib/libicudata.so.48.1.1...done. Loaded symbols for /boot/system/lib/libicudata.so.48.1.1 Reading symbols from /boot/system/lib/libicui18n.so.48.1.1...done. Loaded symbols for /boot/system/lib/libicui18n.so.48.1.1 Reading symbols from /boot/system/lib/libicuio.so.48.1.1...done. Loaded symbols for /boot/system/lib/libicuio.so.48.1.1 Reading symbols from /boot/system/lib/libicule.so.48.1.1...done. Loaded symbols for /boot/system/lib/libicule.so.48.1.1 Reading symbols from /boot/system/lib/libiculx.so.48.1.1...done. Loaded symbols for /boot/system/lib/libiculx.so.48.1.1 Reading symbols from /boot/system/lib/libicutu.so.48.1.1...done. Loaded symbols for /boot/system/lib/libicutu.so.48.1.1 Reading symbols from /boot/system/lib/libicuuc.so.48.1.1...done. Loaded symbols for /boot/system/lib/libicuuc.so.48.1.1 Reading symbols from /boot/system/lib/libtranslation.so...done. Loaded symbols for /boot/system/lib/libtranslation.so Reading symbols from /boot/system/lib/libtextencoding.so...done. Loaded symbols for /boot/system/lib/libtextencoding.so Reading symbols from /boot/system/lib/libroot-addon-icu.so...done. Loaded symbols for /boot/system/lib/libroot-addon-icu.so Reading symbols from /boot/system/servers/input_server...done. Loaded symbols for /boot/system/servers/input_server Reading symbols from /boot/system/apps/ProcessController...done. Loaded symbols for /boot/system/apps/ProcessController Reading symbols from /boot/system/apps/NetworkStatus...done. Loaded symbols for /boot/system/apps/NetworkStatus Reading symbols from /boot/system/lib/libnetwork.so...done. Loaded symbols for /boot/system/lib/libnetwork.so Reading symbols from /boot/system/lib/libbnetapi.so...done. Loaded symbols for /boot/system/lib/libbnetapi.so Reading symbols from /boot/system/bin/desklink...done. Loaded symbols for /boot/system/bin/desklink Reading symbols from /boot/system/lib/libmedia.so...done. Loaded symbols for /boot/system/lib/libmedia.so [tcsetpgrp failed in terminal_inferior: Invalid Argument] [Switching to team /boot/system/Deskbar (126) thread w>Deskbar (196)] 0x002255be in TBarMenuBar::RemoveSeperatorItem () (gdb) bt #0 0x002255be in TBarMenuBar::RemoveSeperatorItem () #1 0x00226af4 in TBarView::PlaceDeskbarMenu () #2 0x00227c3e in TBarView::_ChangeState () #3 0x00228c21 in TBarView::MessageReceived () #4 0x00332b72 in BLooper::DispatchMessage () from /boot/system/lib/libbe.so #5 0x003ebbb4 in BWindow::DispatchMessage () from /boot/system/lib/libbe.so #6 0x003e74c6 in BWindow::task_looper () from /boot/system/lib/libbe.so #7 0x00333e8e in BLooper::_task0_ () from /boot/system/lib/libbe.so #8 0x006bd247 in thread_entry () from /boot/system/lib/libroot.so #9 0x780f6fec in ?? () (gdb)
comment:5 by , 12 years ago
Hi, I try hrev44840, Deskbar still crashes. But moving Deskbar to up/down (right/up and right/down corner of screen) seems to work, moving to left or moving as a bar don't work.
backtrace
GNU gdb 6.3 Copyright 2004 Free Software Foundation, Inc. GDB is free software, covered by the GNU General Public License, and you are welcome to change it and/or distribute copies of it under certain conditions. Type "show copying" to see the conditions. There is absolutely no warranty for GDB. Type "show warranty" for details. This GDB was configured as "i586-pc-haiku"...(no debugging symbols found) [tcsetpgrp failed in terminal_inferior: Invalid Argument] Thread 196 caused an exception: Segment violation Reading symbols from /boot/system/runtime_loader...done. Loaded symbols for /boot/system/runtime_loader Reading symbols from /boot/system/lib/libbe.so...done. Loaded symbols for /boot/system/lib/libbe.so Reading symbols from /boot/system/lib/libtracker.so...done. Loaded symbols for /boot/system/lib/libtracker.so Reading symbols from /boot/system/lib/libsupc++.so...done. Loaded symbols for /boot/system/lib/libsupc++.so Reading symbols from /boot/system/lib/libroot.so...done. Loaded symbols for /boot/system/lib/libroot.so Reading symbols from /boot/system/lib/libstdc++.so...done. Loaded symbols for /boot/system/lib/libstdc++.so Reading symbols from /boot/system/lib/libicudata.so.48.1.1...done. Loaded symbols for /boot/system/lib/libicudata.so.48.1.1 Reading symbols from /boot/system/lib/libicui18n.so.48.1.1...done. Loaded symbols for /boot/system/lib/libicui18n.so.48.1.1 Reading symbols from /boot/system/lib/libicuio.so.48.1.1...done. Loaded symbols for /boot/system/lib/libicuio.so.48.1.1 Reading symbols from /boot/system/lib/libicule.so.48.1.1...done. Loaded symbols for /boot/system/lib/libicule.so.48.1.1 Reading symbols from /boot/system/lib/libiculx.so.48.1.1...done. Loaded symbols for /boot/system/lib/libiculx.so.48.1.1 Reading symbols from /boot/system/lib/libicutu.so.48.1.1...done. Loaded symbols for /boot/system/lib/libicutu.so.48.1.1 Reading symbols from /boot/system/lib/libicuuc.so.48.1.1...done. Loaded symbols for /boot/system/lib/libicuuc.so.48.1.1 Reading symbols from /boot/system/lib/libtranslation.so...done. Loaded symbols for /boot/system/lib/libtranslation.so Reading symbols from /boot/system/lib/libtextencoding.so...done. Loaded symbols for /boot/system/lib/libtextencoding.so Reading symbols from /boot/system/lib/libroot-addon-icu.so...done. Loaded symbols for /boot/system/lib/libroot-addon-icu.so Reading symbols from /boot/system/apps/ProcessController...done. Loaded symbols for /boot/system/apps/ProcessController Reading symbols from /boot/system/apps/NetworkStatus...done. Loaded symbols for /boot/system/apps/NetworkStatus Reading symbols from /boot/system/lib/libnetwork.so...done. Loaded symbols for /boot/system/lib/libnetwork.so Reading symbols from /boot/system/lib/libbnetapi.so...done. Loaded symbols for /boot/system/lib/libbnetapi.so Reading symbols from /boot/system/bin/desklink...done. Loaded symbols for /boot/system/bin/desklink Reading symbols from /boot/system/lib/libmedia.so...done. Loaded symbols for /boot/system/lib/libmedia.so [tcsetpgrp failed in terminal_inferior: Invalid Argument] [Switching to team /boot/system/Deskbar (134) thread w>Deskbar (196)] 0x00225503 in TBarMenuBar::AddSeperatorItem () (gdb) bt #0 0x00225503 in TBarMenuBar::AddSeperatorItem () #1 0x00226b02 in TBarView::PlaceDeskbarMenu () #2 0x00227c92 in TBarView::_ChangeState () #3 0x00228c75 in TBarView::MessageReceived () #4 0x00332b72 in BLooper::DispatchMessage () from /boot/system/lib/libbe.so #5 0x003ebbb4 in BWindow::DispatchMessage () from /boot/system/lib/libbe.so #6 0x003e74c6 in BWindow::task_looper () from /boot/system/lib/libbe.so #7 0x00333e8e in BLooper::_task0_ () from /boot/system/lib/libbe.so #8 0x006bd247 in thread_entry () from /boot/system/lib/libroot.so #9 0x780f6fec in ?? () (gdb)
comment:6 by , 12 years ago
Hi, I rebuild hrev44840 with gcc2 / gcc4 hybrid, it works! I think this is gcc4 problem.
comment:7 by , 12 years ago
Resolution: | → fixed |
---|---|
Status: | assigned → closed |
Should now be fixed in hrev44845.
Rebuilt in gcc4 and the bug became obvious. The separator was being added in vertical mode erroneously because the variable was not set to NULL initially, then switching mode it attempted to delete a non-NULL but garbage object causing the crash. gcc2 most likely initiated the object to NULL implicitly while gcc4 did not which is why the bug only showed on gcc4.
Comment on this ticket if the bug is not fixed for you and I'll re-open.
syslog