mi: Bugfix: FreeCursor ignores negative refcounts.
mieq: Bugfix: Motion notifies did overwrite DeviceMotionNotifies
This commit is contained in:
parent
85ea408e38
commit
e88bc0e55a
|
@ -1,4 +1,13 @@
|
|||
MPX Changelog file
|
||||
== 28.11.06 ==
|
||||
mi: Bugfix: FreeCursor ignores negative refcounts.
|
||||
|
||||
mieq: Bugfix: Motion notifies did overwrite DeviceMotionNotifies
|
||||
|
||||
Files:
|
||||
dix/cursor.c
|
||||
mi/mieq.c
|
||||
|
||||
== 27.11.06 ==
|
||||
mi: free allocated memory in miDCCloseScreen and in miDCInitialize in case
|
||||
of errors.
|
||||
|
|
|
@ -117,7 +117,10 @@ FreeCursor(pointer value, XID cid)
|
|||
ScreenPtr pscr;
|
||||
DeviceIntPtr pDev;
|
||||
|
||||
if ( --pCurs->refcnt > 0)
|
||||
/* FIXME: MPX: When FreeClientRessources is called, it calls FreeCursor
|
||||
* too often. Refcnt gots < 0 and FreeCursorBits segfaults because the
|
||||
* memory is already freed. */
|
||||
if ( --pCurs->refcnt != 0)
|
||||
return(Success);
|
||||
|
||||
pDev = inputInfo.pointer;
|
||||
|
|
|
@ -119,7 +119,7 @@ mieqEnqueue(DeviceIntPtr pDev, xEvent *e)
|
|||
if (e->u.u.type == MotionNotify)
|
||||
isMotion = inputInfo.pointer->id;
|
||||
else if (e->u.u.type == DeviceMotionNotify)
|
||||
isMotion = pDev->id;
|
||||
isMotion = pDev->id | (1 << 8); /* flag to indicate DeviceMotion */
|
||||
|
||||
/* We silently steal valuator events: just tack them on to the last
|
||||
* motion event they need to be attached to. Sigh. */
|
||||
|
|
Loading…
Reference in New Issue
Block a user