Bradley T Hughes wrote:
On Friday 16 July 2004 09:25, Robert Marshall wrote:

Since updating yesterday, I've seen quite a few crashes, typically
what's happening is

close window
attempt to switch workspace using bbkeys - nothing happens
bring up menu with mouse - crash! (or use mouse to attempt to change
workspaces)


fun fun, blackbox is losing track of the focus :)

...
blackbox->getFocusedWindow() is returning a dangling pointer...

...

I've been trying to clean this up some. Attached is a patch that I've been working on the past week. I have been running it for a few days now, and it seems ok, but there might be some kinks to iron out. Give it a shot, if you dare :)



Robert



I think this is probably related to this thread. I also have been seeing a lot of crashes lately which mostly happen after closing a window, however sometimes just revealing the toolbar (I have it on auto-hide) or switching workspaces causes the crash. I've been trying to reproduce it and follow things with gdb but that's a bit more difficult with a window manager than it is a normal program (or I just havn't discovered the secret to doing it yet). I did manage to get this back trace just today when I reproduced it.



-------------------------------------------------------------------------- 0x420e187e in select () from /lib/i686/libc.so.6 (gdb) continue Continuing.

Program received signal SIGSEGV, Segmentation fault.
0x4023ec92 in std::string::c_str() const (this=0x8140c5c) at /home/kicken/downloads/gcc-build/i686-pc-linux-gnu/libstdc++-v3/include/bits/char_traits.h:127
127 /home/kicken/downloads/gcc-build/i686-pc-linux-gnu/libstdc++-v3/include/bits/char_traits.h: No such file or directory.
in /home/kicken/downloads/gcc-build/i686-pc-linux-gnu/libstdc++-v3/include/bits/char_traits.h
(gdb) up
#1 0x0807053a in Toolbar::redrawWindowLabel() (this=0x813d878) at Toolbar.cc:455
455 bt::drawText(style->font, pen, frame.window_label, u,
(gdb) bt
#0 0x4023ec92 in std::string::c_str() const (this=0x8140c5c) at /home/kicken/downloads/gcc-build/i686-pc-linux-gnu/libstdc++-v3/include/bits/char_traits.h:127
#1 0x0807053a in Toolbar::redrawWindowLabel() (this=0x813d878) at Toolbar.cc:455
#2 0x080717fe in Toolbar::exposeEvent(XExposeEvent const*) (this=0x813d878, event=0xbffff700) at Toolbar.cc:705
#3 0x080858e5 in bt::Application::process_event(_XEvent*) (this=0x813d878, event=0xbffff700) at Application.cc:446
#4 0x080806d9 in Blackbox::process_event(_XEvent*) (this=0xbffff7b0, e=0xbffff700) at blackbox.cc:333
#5 0x0808529f in bt::Application::run() (this=0xbffff7b0) at Application.cc:236
#6 0x0808435c in main (argc=3, argv=0xbffff984) at main.cc:147
#7 0x42017499 in __libc_start_main () from /lib/i686/libc.so.6
(gdb) print foc->client
$3 = {window = 1075800126, colormap = 1075800142, transient_for = 0x402497b0,
transientList = {<_List_base<BlackboxWindow*,std::allocator<BlackboxWindow*> >> = {<_List_alloc_base<BlackboxWindow*,std::allocator<BlackboxWindow*>,true>> = {
_M_node = 0x401f686e}, <No data fields>}, <No data fields>}, title = {static npos = Cannot access memory at address 0x9014ab4
(gdb)
========================================================================================


The crash seems to happen mostly for me in the redrawWindowLabel function, specifically when it tries to write the window title. The title property is invalid I guess, which I supposed could be caused by an invalid window being returned from getFocusedWindow() ?


I still havn't gotten to know the blackbox code much, but I'm slowly figuring it out. I do have the patch you submitted to the list installed which did make it a bit harder to crash blackbox, but still (seemingly randomly) possible. If there's anything else you think I could do to help as far as information goes, I can try and get it for you.


Thanks,


--
Keith Maika
http://kicken.mine.nu:8008/ - Personal Site.
http://wiser.kicks-ass.org:8008/ - Long-term Project.
http://www.fsf.org/philosophy/can-you-trust.html - Can you trust your computer?
http://www.fsf.org/philosophy/no-word-attachments.html - Support Free Communication.


--
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
List archives:  http://asgardsrealm.net/lurker/splash/index.html
Trouble? Contact [EMAIL PROTECTED]



Reply via email to