Comment 5 for bug 1172094

Revision history for this message
In , Yaroslav Halchenko (yarikoptic) wrote :

Reported originally: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=681796
Happens with xserver-xorg-core 1.12.1.902-1

top backtrace from gdb:

Program received signal SIGSEGV, Segmentation fault.
XIChangeDeviceProperty (dev=dev@entry=0x7f4bac237fa0, property=<optimized out>, type=type@entry=19, format=format@entry=8, mode=<optimized out>, mode@entry=0, len=len@entry=1,
    value=value@entry=0x7fff092e860f, sendevent=sendevent@entry=1) at ../../Xi/xiproperty.c:772
772 ../../Xi/xiproperty.c: No such file or directory.
#0 XIChangeDeviceProperty (dev=dev@entry=0x7f4bac237fa0, property=<optimized out>, type=type@entry=19, format=format@entry=8, mode=<optimized out>, mode@entry=0,
    len=len@entry=1, value=value@entry=0x7fff092e860f, sendevent=sendevent@entry=1) at ../../Xi/xiproperty.c:772
#1 0x00007f4ba813c20f in DisableDevice (dev=0x7f4bac237fa0, sendevent=sendevent@entry=1 '\001') at ../../dix/devices.c:481
#2 0x00007f4ba817e344 in xf86VTSwitch () at ../../../../hw/xfree86/common/xf86Events.c:454
#3 xf86Wakeup (blockData=<optimized out>, err=<optimized out>, pReadmask=<optimized out>) at ../../../../hw/xfree86/common/xf86Events.c:285
#4 0x00007f4ba8146d9b in WakeupHandler (result=result@entry=-1, pReadmask=pReadmask@entry=0x7f4

here is an excerpt from xiproperty.c for that location:

   766 /* run through all handlers with checkonly TRUE, then again with
   767 * checkonly FALSE. Handlers MUST return error codes on the
   768 * checkonly run, errors on the second run are ignored */
   769 do {
   770 handler = dev->properties.handlers;
   771 while (handler) {
   772 if (handler->SetProperty) {
   773 rc = handler->SetProperty(dev, prop->propertyName,
   774 &new_value, checkonly);
   775 if (checkonly && rc != Success) {
   776 free(new_value.data);
   777 return rc;
   778 }
   779 }
   780 handler = handler->next;
   781 }
   782 checkonly = !checkonly;
   783 } while (!checkonly);