The following message is a courtesy copy of an article that has been posted to gmane.comp.lib.cairo as well.
On Sa, Okt 06, 2012 at 11:56:13 (CEST), Chris Wilson wrote: > On Sat, 6 Oct 2012 11:31:14 +0200, Andreas Radke <[email protected]> > wrote: >> I've packaged the new release and it works well in ArchLinux with my >> local Awesome WM setup. >> >> Remote connections using OpenNX are broken when used with Xfce. >> Xfce-panel and menu keep crashing instantly until I downgrade to 1.12.2 >> on the server. > > There is not enough information here to begin to access the cause. A > stack trace would be a good start. It seems that cairo unconditionally assumes that the xserver does support the latest version of the Xrender extension: http://cgit.freedesktop.org/cairo/tree/src/cairo-xlib-display.c?id=1.12.2#n217 This assumption does not hold for many non-Xorg Xservers, including nxagent, which is used by NX and derivatives like OpenNX, FreeNX or X2Go: http://code.x2go.org/gitweb?p=nx-libs.git;a=blob;f=nx-X11/include/extensions/render.h;h=691c63fdecfcbc29c3625fd2b85ae1400a7b64e6;hb=HEAD#l109 Note that the defines for Operators only available in version 0.11 in Xorg are *not* included: /* * Operators only available in version 0.11 */ #define PictOpBlendMinimum 0x30 #define PictOpMultiply 0x30 #define PictOpScreen 0x31 #define PictOpOverlay 0x32 #define PictOpDarken 0x33 #define PictOpLighten 0x34 #define PictOpColorDodge 0x35 #define PictOpColorBurn 0x36 #define PictOpHardLight 0x37 #define PictOpSoftLight 0x38 #define PictOpDifference 0x39 #define PictOpExclusion 0x3a #define PictOpHSLHue 0x3b #define PictOpHSLSaturation 0x3c #define PictOpHSLColor 0x3d #define PictOpHSLLuminosity 0x3e #define PictOpBlendMaximum 0x3e Also, note that nxagent does not use pixman (which is the software implementation that Xorg uses nowadays), but the old, previous implementation of low-level pixel rendering, AFAIUI for example: http://code.x2go.org/gitweb?p=nx-libs.git;a=blob;f=nx-X11/programs/Xserver/fb/fbcompose.c;h=f8169995fdb39b83dd71f978e28e00e87abf1572;hb=HEAD#l3395 I would assume that there are still a number of other non-Xorg X11 servers (most of them commercial) that do not support these operations. Chris, is there any chance to fix/change cairo to work also without operators that are only available in version 0.11? -- Gruesse/greetings, Reinhard Tartler, KeyID 945348A4 _______________________________________________ X2Go-Dev mailing list [email protected] https://lists.berlios.de/mailman/listinfo/x2go-dev
