diff options
author | Uli Schlachter <psychon@znc.in> | 2012-04-11 21:37:55 +0200 |
---|---|---|
committer | Uli Schlachter <psychon@znc.in> | 2012-04-11 21:37:55 +0200 |
commit | 07fc63676dfdaa57ed919ad7be8f59c97c615473 (patch) | |
tree | 9b1a03098a9ef405a0d23e86b3e8d556aeef3447 /src | |
parent | 09de481ce5f6ed1c38c0d5bf3af7c60642c4c947 (diff) |
xlib: Disable fallback compositor with xlib-xcb
When xlib-xcb is enabled, this is just dead code which is never used. Thus, this
shouldn't hurt. However, this does include cairo-xlib-private.h. Shouldn't be a
problem? Well, that header contains static inline functions which some compiler
on Solaris will emit even when they are unused.
This brings us to the real problem: That static inline function refers to a
function which isn't compiled with xlib-xcb and thus linking fails with
undefined symbols.
This can be reproduced with GCC by adding a call to
_cairo_xlib_screen_put_gc(NULL, NULL, 0, 0); to
_cairo_xlib_fallback_compositor_get.
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=48489
Signed-off-by: Uli Schlachter <psychon@znc.in>
Diffstat (limited to 'src')
-rw-r--r-- | src/cairo-xlib-fallback-compositor.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/src/cairo-xlib-fallback-compositor.c b/src/cairo-xlib-fallback-compositor.c index 53919268..7d45cd14 100644 --- a/src/cairo-xlib-fallback-compositor.c +++ b/src/cairo-xlib-fallback-compositor.c @@ -42,6 +42,8 @@ #include "cairoint.h" +#if !CAIRO_HAS_XLIB_XCB_FUNCTIONS + #include "cairo-xlib-private.h" #include "cairo-compositor-private.h" @@ -52,3 +54,5 @@ _cairo_xlib_fallback_compositor_get (void) /* XXX Do something interesting here to mitigate fallbacks ala xcb */ return &_cairo_fallback_compositor; } + +#endif /* !CAIRO_HAS_XLIB_XCB_FUNCTIONS */ |