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
Bugs, which is subscribed to Ubuntu.
https://bugs.launchpad.net/bugs/720445

Title:
  Xorg crashed with SIGSEGV in _start()

-- 
ubuntu-bugs mailing list
ubuntu-bugs@lists.ubuntu.com
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs

Reply via email to