GNU bug report logs - #16058
24.3.50; X protocol error: BadAlloc...

Previous Next

Package: emacs;

Reported by: Thierry Volpiatto <thierry.volpiatto <at> gmail.com>

Date: Thu, 5 Dec 2013 05:53:02 UTC

Severity: normal

Found in version 24.3.50

Fixed in version 24.4

Done: Glenn Morris <rgm <at> gnu.org>

Bug is archived. No further changes may be made.

Full log


Message #23 received at 16058 <at> debbugs.gnu.org (full text, mbox):

From: Dmitry Antipov <dmantipov <at> yandex.ru>
To: Thierry Volpiatto <thierry.volpiatto <at> gmail.com>
Cc: 16058 <at> debbugs.gnu.org
Subject: Re: bug#16058: 24.3.50; X protocol error: BadAlloc...
Date: Fri, 06 Dec 2013 10:26:28 +0400
On 12/05/2013 11:10 AM, Thierry Volpiatto wrote:

> So you mean try to reproduce the bug with emacs compiled with:
> ./configure --with-x-toolkit=lucid --without-toolkit-scroll-bars
> then with:
> ./configure --with-x-toolkit=lucid --without-toolkit-scroll-bars --without-gconf
> then with:
> ./configure --with-x-toolkit=lucid --without-toolkit-scroll-bars --without-gconf --without-gsettings
> then with:
> ./configure --with-x-toolkit=lucid --without-toolkit-scroll-bars --without-all

Could you please try the following steps:

1) Run under xtruss (http://www.chiark.greenend.org.uk/~sgtatham/xtruss)
and check for BadAlloc raised by XCreatePixmap, like below:

02400000: ChangeGC(gc=g#02400067, clip-mask=None)
02400000:  ... CreatePixmap(pid=p#0240012D, drawable=wp#02400064, depth=24, width=576, height=65459) = BadAlloc
02400000:  ... PolyFillRectangle(drawable=wp#0240012D, gc=g#02400104, rectangles[0]={x=0, y=0, width=65459, height=44}) = BadDrawable(drawable=wp#0240012D)
02400000:  ... CopyArea(src-drawable=wp#024000CA, dst-drawable=wp#0240012D, gc=g#02400104, src-x=0, src-y=0, width=24, height=24, dst-x=5, dst-y=10) = BadDrawable(drawable=wp#0240012D)
02400000:  ... CopyArea(src-drawable=wp#0240012D, dst-drawable=wp#02400064, gc=g#02400104, src-x=0, src-y=0, width=65459, height=44, dst-x=711, dst-y=0) = BadDrawable(drawable=wp#0240012D)
02400000:  ... FreePixmap(pixmap=p#0240012D) = BadPixmap(pixmap=p#0240012D)

2) Check whether you hit this eassert:

=== modified file 'src/xdisp.c'
--- src/xdisp.c	2013-12-04 18:46:47 +0000
+++ src/xdisp.c	2013-12-06 05:53:44 +0000
@@ -23803,6 +23803,7 @@
     s->background_width = last_x - s->x + 1;
   else
     s->background_width = s->width;
+  eassert (s->background_width > 0);
 }

3) Check whether an issue disappears when you configure without '--without-gsettings'.

Dmitry





This bug report was last modified 11 years and 159 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.