GNOME Bugzilla – Bug 353842
Lockup while doing a drag and drop
Last modified: 2008-08-22 20:18:46 UTC
I sometimes get a lockup when doing a drag and drop operation. This happens when dragging a window from the window list. So something like the following: 1. press the button 2. drag away fast This way I can reproduce it every once in a while ... haven't found an easier way. One thing I noticed is that when it happens, there is a region on the window list that needs to be redrawn. After that, the wnck-applet locks up and the drag icon doesn't move anymore. The X cursor moves around fine, but I can't do anything because it is dragging. So I need to kill wnck-applet remotely.
A backtrace of wnck-applet. GNU gdb 6.4.90-debian Copyright (C) 2006 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 "powerpc-linux-gnu"...(no debugging symbols found) Using host libthread_db library "/lib/tls/libthread_db.so.1". [...] 0x0f5e1658 in poll () from /lib/tls/libc.so.6 (gdb) bt full
+ Trace 71364
(gdb) quit The program is running. Quit anyway (and detach it)? (y or n) Detaching from program: /usr/lib/gnome-panel/wnck-applet, process 21924
Created attachment 72019 [details] [review] adds an xsync This patch adds a "XSync(dpy, False);" to list_children_and_wm_state right after the LockDisplay. I can't reproduce a lockup then, but no idea if this makes any sense :-). The first time I tried to reproduce the bug with this patch I got something printed to the console, no idea if this is related or something completly different (haven't seen it again after trying quite a lot): Xlib: sequence lost (0x481bd > 0x381be) in reply type 0x0! Xlib: sequence lost (0x89782 > 0x79783) in reply type 0x0!
Seing this too. Once a week with evolution, at least once a day with wnck-applet, kind of annyoing. I'm using a trackpoint and the latter is happening mostly when I accidentally get into drag mode when just klicking through the window list in the panel.
The patch doesn't make much sense to me. For starters, it is probably a bad idea to call public xlib api inside the display lock, since it'll lock again. Is the X11 display lock recursive ?
I just tried to reproduce it, but can't anymore. So closing as incomplete.