Sorry, that was a horrible paste.

The crash is an out-of-memory situation.  In the first call,
XISendDeviceHierarchyEvent() dereferences calloc'd memory without
checking the pointer:

void XISendDeviceHierarchyEvent(int flags[MAXDEVICES])
{
...
    ev = calloc(1, sizeof(xXIHierarchyEvent) +
                 MAXDEVICES * sizeof(xXIHierarchyInfo));
    ev->type = GenericEvent;

But as per the backtrace, ev is null at this point:

#0 XISendDeviceHierarchyEvent (flags=0xbfa27e1c) at 
../../Xi/xichangehierarchy.c:73
        ev = 0x0

We can patch in a check for this which will fix the X crash, but it
doesn't answer the question as to why it is running out of memory to
begin with.

-- 
You received this bug notification because you are a member of Ubuntu-X,
which is subscribed to xorg-server in ubuntu.
https://bugs.launchpad.net/bugs/720445

Title:
  Xorg crashed with SIGSEGV in _start()

_______________________________________________
Mailing list: https://launchpad.net/~ubuntu-x-swat
Post to     : ubuntu-x-swat@lists.launchpad.net
Unsubscribe : https://launchpad.net/~ubuntu-x-swat
More help   : https://help.launchpad.net/ListHelp

Reply via email to