Bug 4068

Summary: Cairo's detection of Vendor String in Xorg is incorrect
Product: cairo Reporter: Daniel Stone <daniel>
Component: xlib backendAssignee: Carl Worth <cworth>
Status: RESOLVED FIXED QA Contact: cairo-bugs mailing list <cairo-bugs>
Severity: normal    
Priority: high CC: cardoe, dberkholz, leio, otaylor
Version: 0.9.3   
Hardware: x86 (IA32)   
OS: Linux (All)   
Whiteboard:
i915 platform: i915 features:
Attachments: Proposed patch for cairo-0.9.2 dealing with vendor string change

Description FreeDesktop Bugzilla Database Corruption Fix User 2005-08-13 17:12:10 UTC
Cairo currently uses the Vendor String to determine a workaround necessary for
bug #3566, a work around that does not work in Gentoo. As commented on in
http://bugzilla.gnome.org/show_bug.cgi?id=306216. However if you look at this it
is incorrect to do this. The Vendor string is a property that's modifiable by
the end user/distro/packager so the proper value should be the Xorg version
value. Which will remain constant and contain the exact version of the Xorg server.
Comment 1 Donnie Berkholz 2005-08-13 17:16:17 UTC
It seems a little odd to be trying a version number out of a string when there's
already at least two places where you can get just the number, in different forms:

For example, xdpyinfo output includes:
vendor release number:    60899015
X.Org version: 6.8.99.15
Comment 2 Owen Taylor 2005-08-14 00:01:28 UTC
We don't get the version number out of the vendor string. We use the 
vendor string to *INTERPRET* the vendor release number.

vendor release number:    60899007

Or whatever means *nothing* unless you know what vendor it is; compare
the check for XFree86 version.

This bug cannot be detected with a run-time test; whether
it occurs depends on whether a pixmap is allocated into video
ram or system ram, which isn't controllable. 

We'll take a patch so that the Gentoo modified vendor string
gets recognized (I think they just prepend something), but that's
all we can do.
Comment 3 Mart Raudsepp 2005-08-15 08:11:40 UTC
Created attachment 2868 [details] [review]
Proposed patch for cairo-0.9.2 dealing with vendor string change
Comment 4 Doug Goldstein 2005-08-15 21:53:29 UTC
I originally reported this bug. My original comments are missing as am I missing
as the reporter...
Comment 5 Donnie Berkholz 2005-08-20 12:54:37 UTC
That patch is exactly what I was thinking, if we needed to use the vendor string.
Comment 6 Owen Taylor 2005-08-21 08:11:36 UTC
2005-08-21  Owen Taylor  <otaylor@redhat.com>

        * src/cairo-xlib-surface.c (_cairo_xlib_surface_create_internal):
        Recognize gentoo's (and maybe other distro's) modified
        server vendor string, where extra text is added to the
        upstream value. (#4068, reported by Doug Goldstein, others.
        Patch from Mart Raudsepp)
Comment 7 Donnie Berkholz 2005-08-21 12:58:11 UTC
Thanks much, Owen!
Comment 8 Carl Worth 2005-08-22 17:15:58 UTC
Move bugs against "cvs" version to "0.9.3" so we can remove the "cvs" version.

Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.