CVS Update: xc (branch: lg3d-dev)
Deron Johnson
xorg-commit at cvs.freedesktop.org
Thu Mar 2 02:15:48 EET 2006
CVSROOT: /cvs/xorg
Module name: xc
Changes by: deronj at kemper.freedesktop.org 06/03/02 00:15:48
Log message:
Fix bug where rapidly multiclicking the left mouse button over the
lower scrollbar button of gnome-terminal crashes the X server. The
problem was happening because when a button release arrives from the
DS the default button grab is deactivated. This deactivation calls
ComputeFreezes, which may replay events frozen in the pointer input
queue. But because this whole sequence of calls was initiated from
LgeProcSendEvent lgeEventComesFromDS is 1. So this causes ComputeFreezes
to not send any queued events to the DS but try to process them itself.
Since the event window is 0 for these events the sprite.win ends up as null.
The fix is to force lgeEventComesFromDS to 0 while DeactivateGrab (and
therefore, ComputeFreezes) is being called.
Modified files:
xc/programs/Xserver/dix/: Tag: lg3d-dev
events.c
xc/programs/Xserver/Xext/: Tag: lg3d-dev
lgeint.h
Revision Changes Path
1.17.4.3 +22 -3 xc/programs/Xserver/dix/events.c
http://cvs.freedesktop.org/xorg/xc/programs/Xserver/dix/events.c
1.1.4.5 +1 -1 xc/programs/Xserver/Xext/Attic/lgeint.h
http://cvs.freedesktop.org/xorg/xc/programs/Xserver/Xext/Attic/lgeint.h
More information about the xorg-commit
mailing list