RENDER extension on Exceed 8 with FC1

Karl Vogel <kvo-gm-eDJ9Xp5/[email protected]> Wed, 3 Dec 2003 11:22:51 +0000 (UTC)
Newsgroups gmane.comp.freedesktop.xlibs.general
Message-ID <[email protected]>
I was having problems with Fedora Core 1 to get KDE to use anti aliasing. 
This worked on Red Hat 9. 

It had me puzzled for a while, as GNOME was showing anti aliased fonts. I 
finally tracked it down.

QT checks if RENDER is present. If it isn't, it doesn't use Xft (I think). 
This explained why GNOME worked and KDE not, as QT isn't aware that the new 
Xft libs can do client side anti aliasing.

This still left me with the question why it worked on RH9 and not on FC1. 
xpdyinfo showed that RENDER was in the extension list, but 'xdpyinfo -ext 
all' gave: 'RENDER extension not supported by server'.

I noticed that FC1 is using a newer Xrender library (0.8.3), so I tried 
with the RH9 Xrender library (0.8) and then it worked again. Anyway to make 
a long story short, the problem was that Exceed doesn't have depth 4 and 
the new Xrender library checks in XRenderHasDepths() if Depths 1, 4, 8, 24 
and 32 are supported. If they aren't, RENDER is disabled.

Now my question...

Would it be possible to make RENDER work without depth 4?! If I disable the 
depth 4 test and let PictStandardA4 use the PictStandardA1 parameters, then 
I get the font anti aliasing in KDE, but I guess it would cause problems 
for some applications?! ie. I can't use fixed font anymore after this 
change, as I get the following errors:


X Error: BadLength (poly request too large or internal Xlib length error) 
16
  Major opcode:  152
  Minor opcode:  20
  Resource id:  0x58001af
X Error: BadLength (poly request too large or internal Xlib length error) 
16
  Major opcode:  152
  Minor opcode:  20
  Resource id:  0x58001af

Opcode 152 is Render so this makes me to believe patching the source is not  
quite that straight forward :-)