Fix for bug #4142:

Disable xlib tests on X servers without the Render, since they currently just crash there. A better long-term fix would be to do some useful tests in this case. Thanks to Tim Mooney.
This commit is contained in:
Carl Worth 2005-08-20 07:56:05 +00:00
parent 4a7a09b4ab
commit d1bdd1313e
2 changed files with 21 additions and 0 deletions

View file

@ -1,3 +1,12 @@
2005-08-20 Carl Worth <cworth@cworth.org>
Fix for bug #4142:
* test/cairo-test.c (create_xlib_surface): Disable xlib tests on X
servers without the Render, since they currently just crash
there. A better long-term fix would be to do some useful tests in
this case. Thanks to Tim Mooney.
2005-08-20 Owen Taylor <otaylor@redhat.com>
* src/cairo-xlib-surface.c (_cairo_xlib_surface_create_internal):

View file

@ -382,7 +382,19 @@ create_xlib_surface (int width, int height, void **closure)
return NULL;
}
/* XXX: Currently we don't do any xlib testing when the X server
* doesn't have the Render extension. We could do better here,
* (perhaps by converting the tests from ARGB32 to RGB24). One
* step better would be to always test the non-Render fallbacks
* for each test even if the server does have the Render
* extension. That would probably be through another
* cairo_test_target which would use an extended version of
* cairo_test_xlib_disable_render. */
xrender_format = XRenderFindStandardFormat (dpy, PictStandardARGB32);
if (xrender_format == NULL) {
cairo_test_log ("X server does not have the Render extension.\n");
return NULL;
}
xtc->pixmap = XCreatePixmap (dpy, DefaultRootWindow (dpy),
width, height, xrender_format->depth);