xserver: Branch 'mpx'

Peter Hutterer whot at kemper.freedesktop.org
Thu May 22 01:40:20 PDT 2008


 hw/xfree86/common/xf86Xinput.c |    2 ++
 1 file changed, 2 insertions(+)

New commits:
commit 74372fd0049676787904f1f9f80f836b97f5f60e
Author: Peter Hutterer <peter at cs.unisa.edu.au>
Date:   Thu May 22 18:02:10 2008 +0930

    xfree86: suspend signals while removing a device.
    
    Getting a keyboard event while halfway through freeing memory can be
    unpleasant.

diff --git a/hw/xfree86/common/xf86Xinput.c b/hw/xfree86/common/xf86Xinput.c
index e53756f..9961624 100644
--- a/hw/xfree86/common/xf86Xinput.c
+++ b/hw/xfree86/common/xf86Xinput.c
@@ -475,6 +475,7 @@ DeleteInputDeviceRequest(DeviceIntPtr pDev)
         drv = pInfo->drv;
         idev = pInfo->conf_idev;
     }
+    OsBlockSignals();
     RemoveDevice(pDev);
 
     if (pDev->isMaster)
@@ -484,6 +485,7 @@ DeleteInputDeviceRequest(DeviceIntPtr pDev)
         drv->UnInit(drv, pInfo, 0);
     else
         xf86DeleteInput(pInfo, 0);
+    OsReleaseSignals();
 
     /* devices added through HAL aren't in the config layout */
     it = xf86ConfigLayout.inputs;


More information about the xorg-commit mailing list