indicator-applet-complete crashed with SIGABRT in __assert_fail_base()
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
cairo (Ubuntu) |
Invalid
|
Undecided
|
Unassigned | ||
libx11 (Ubuntu) |
Invalid
|
Medium
|
Unassigned |
Bug Description
indicator-
ProblemType: Crash
DistroRelease: Ubuntu 12.04
Package: indicator-
ProcVersionSign
Uname: Linux 3.2.0-20-
ApportVersion: 2.0-0ubuntu2
Architecture: i386
CrashCounter: 1
Date: Mon Apr 2 23:01:01 2012
ExecutablePath: /usr/lib/
InstallationMedia: Ubuntu 12.04 LTS "Precise Pangolin" - Alpha i386 (20120318)
ProcCmdline: /usr/lib/
ProcEnviron:
SHELL=/bin/bash
LANG=es_ES.UTF-8
Signal: 6
SourcePackage: indicator-applet
Title: indicator-
UpgradeStatus: No upgrade log present (probably fresh install)
UserGroups: adm cdrom dip lpadmin plugdev sambashare sudo
visibility: | private → public |
affects: | indicator-applet (Ubuntu) → libx11 (Ubuntu) |
Hmm, I doubt this is actually a bug in libx11.
The bug is an assertion, so something is definitely wrong. This is the assertion that's failing:
XID _XAllocID(Display *dpy)
{
XID ret = dpy->xcb->next_xid;
assert (ret != inval_id); /* FAIL */
...
So we know there's bad data in the Display structure.
_XAllocID is being called by XCreatePixmap(), which looks like this:
Pixmap XCreatePixmap ( (dpy); ay(dpy) ;
register Display *dpy,
...)
{
....
LockDisplay
....
pid = req->pid = XAllocID(dpy);
UnlockDispl
LockDisplay doesn't appear to tinker with anything in the dpy->xcb part of the structure, so we can ignore that.
XCreatePixmap is called from cairo, so we're outside libx11 at that point.
Doesn't answer the question of where the inval_id came from to begin with though...