Some Eclipse Foundation services are deprecated, or will be soon. Please ensure you've read this important communication.

Bug 89810

Summary: breakpoint in a DropAdapter hangs xwindows (gtk)
Product: [Eclipse Project] JDT Reporter: Steve <Stephen_Toledo_Brown>
Component: DebugAssignee: JDT-Debug-Inbox <jdt-debug-inbox>
Status: RESOLVED DUPLICATE QA Contact:
Severity: critical    
Priority: P3 CC: billy.biggs
Version: 3.0.1   
Target Milestone: ---   
Hardware: PC   
OS: Linux-GTK   
Whiteboard:

Description Steve CLA 2005-03-31 07:05:01 EST
I'm trying to debug a drag'n'drop problem. I've put a breakpoint in the
validateDrop() method of our MSGElementDropAdapter (which extends
org.eclipse.jface.viewers.ViewerDropAdapter ). If I run in debug mode on Linux
(gtk), I get stuck so that I have to kill xwindows with Ctrl-Alt-Backspace.
Nothing else on the keyboard works (e.g. Alt-Tab can't get me to the other apps).
The mouse still moves the cursor, but button-presses get me nowhere.
The cursor shape is the drag-n-drop indicator (for me that's like the top and
left side of a square, but it's shown in the PDE Eclipse instance (Debug
perspective running) rather than the target Eclipse that I'm trying to debug,
and in which the drag-n-drop is supposed to take place.
The drag-drop is all within one editor in the target Eclipse instance.
I believe the severity should be 'critical' as it's effectively a crash.
It all behaves OK on Windows XP.
I don't really know whether this is a debugger or SWT problem.
Comment 1 Darin Wright CLA 2005-04-06 15:04:36 EDT
Billy, have you seen anything like this before on GTK?
Comment 2 Billy Biggs CLA 2005-04-06 15:31:44 EDT
This sort of thing happens when someone has an X pointer grab and not released
it.  You can actually avoid killing the whole X server by just killing the
process which has the grab.

In this case, I believe GTK+ is doing the pointer grab, and I think they have to
for drag and drop to work correctly.  This is a case where you cannot use a
breakpoint, and I do not believe there is anything SWT can do to help.  The
traditional solution when debugging operations that require a server grab is to
use two machines and remote X to debug it.  See the discussion in bug 20006.

*** This bug has been marked as a duplicate of 20006 ***