[Xquartz-dev] X Error

George Peter Staplin georgeps at xmission.com
Tue Apr 7 12:16:24 PDT 2009


Quoted nico <sl1200mk2 at gmail.com>:

> hi George, and thank ou for your answer.
>
> George Peter Staplin a écrit :
>> Quoted nico <sl1200mk2 at gmail.com>:
>>
>>> i had this error :
>>> X Error of failed request : BadIDChoice (invalid resource ID chosen for
>>> this connection)
>>> Major opcode of failed request: 148 (RENDER)
>>> Minor opcode of failed request: 4 (RenderCreatePicture)
>>> Resource id in failed request: 0xa876d1
>>> Serial number of failed request: 2704569
>>> Current serial number in output stream: 2704572
>>>
>>
>> Hi Nico,
>>
>> I believe I may have seen this error before in the context of Tk.    
>> I'm a Tk maintainer/developer on SourceForge.
>>
>> Are you trying to draw text with something like Tk_DrawChars?  Be   
>> aware that Tk for X11 will fail if you try to draw to a 1-bit deep   
>> Pixmap.  This is a regression in Tk that occurred in 8.5, when the   
>> libXft-based text rendering was added.  libXft IIRC uses Render.  I  
>>  wrote a patch for this issue that solved the problem for some  
>> users  that used BLT and other extensions, but the other Tk  
>> developers  thought the fix was too costly, and believed it would  
>> harm network  Tk performance.  Unfortunately there isn't a better  
>> way of solving  the problem, and it certainly hasn't been solved by  
>> the other  developers, so if this is the problem, you should use a  
>> deeper  Pixmap, or --disable-xft.
> all my app is built over display and changing canvas text.... a shame !!
> i don't use any extension exept Tk, and all text update are interpreted
> via itemconfigure.
> i never call Tk command directly, i always use the Tcl side.
>
> if i use --disable-xft, font won't be aliased.... not so good
>>
>> An easy way to confirm if the problem is caused by what I suspect   
>> it is, is to configure Tk with --disable-xft.
>>
>> This is from the tk/unix/README:
>> --disable-xft           Disable support for antialiased fonts via the
>>                                Freetype/xft library. By default, this is
>>                                switched on whenever the configure script can
>>                                detect the required libraries.
>>
>> If the problem goes away, then look for pixmaps with limited depth,  
>>  and try to use 8 or more as a depth.
> as i'm using Tcl to update Tk's canvas, how can i determine if they're
> 1 bits or 8 bits depth ??

It seems I may have been mistaken about the BadIDChoice cause...

This may actually be an X.org bug.

See: http://bugs.freedesktop.org/show_bug.cgi?id=20254

It could have something to do with using the newer libX11 with the  
older xorg-server-1.4-apple branch.

I'm not sure if the XQuartz libX11 has the fix for the xcb code that  
was broken, or what specific version of the libX11 release has the  
fix, if any.  The changes appear to be in git though now (the last  
update was March 30, 2009) for a March 24, 2009 commit.

Jeremy, do you have any thoughts on this?

George
-- 
http://people.freedesktop.org/~gstaplin/


More information about the Xquartz-dev mailing list