GNOME Bugzilla – Bug 679630
check-gdk-cairo test fails
Last modified: 2018-02-10 03:22:54 UTC
Created attachment 218335 [details] png created by gdk While hunting for a way to convince you to to fix the bug part of bug 513812, I've built gdk/tests/check-gdk-cairo.c - the result was a bit surprising: ** (./check-gdk-cairo:2628): WARNING **: Eeek! Images are differing at byte 24 Now, that doesn't really tell where in the image the difference happened, but I took a guess and checked 8th pixel in the first row. In gdksurface.png it has the value #f9f9f9, in cairosurface.png the value is #f8f8f8. gtk+:2 is 2.24.10, cairo is 1.12.2. Now, I wonder if that value is just a coincidence...
Created attachment 218336 [details] png created by cairo
Interesting, when I beat that file in gtk+-3.4 branch into shape (GtkDrawingArea inside GtkOffscreenWindow, gtk_offscreen_window_get_pixbuf + a tweak for adding alpha to pbuf_imagesrf (with xcompmgr resulting pixbuf for GtkOffscreenWindow has alpha, but one from cairo_image_surface_create didn't even after I've changed it to CAIRO_FORMAT_ARGB32)), I've got abot the same result, that is the difference was on the same pixel with the same values.
Created attachment 218357 [details] check-gdk-cairo.c modified for gtk3 (needs to link with gtk3)
Created attachment 218412 [details] gtk3 test restored to gdk-only OK, I've read the docs page more carefully and gtk+ linking wasn't needed after all. This slight inconsistency is observed regardless.
Created attachment 221048 [details] test reduced to difference between surfaces Reduced the test, so that the only difference is image surface vs gdk window (so, most likely, an xlib surface). The problem still happens. Not sure if the problem happens in gtk+ or in cairo.
We're moving to gitlab! As part of this move, we are closing bugs that haven't seen activity in more than 5 years. If this issue is still imporant to you and still relevant with GTK+ 3.22 or master, please consider creating a gitlab issue for it.