X-Git-Url: http://review.tizen.org/git/?a=blobdiff_plain;f=test%2Fx11.c;h=00f3a962a268901ce57d18cf7798304ab6b71210;hb=134c6bb28eaa8ebdcea41e8454f5d158e96dcd14;hp=232e136afd69a7ed3347dd1d60db0d640f2d032f;hpb=973b8fd47e885f1c80c715b317fa896f8d31a7a4;p=platform%2Fupstream%2Flibxkbcommon.git diff --git a/test/x11.c b/test/x11.c index 232e136..00f3a96 100644 --- a/test/x11.c +++ b/test/x11.c @@ -21,6 +21,8 @@ * DEALINGS IN THE SOFTWARE. */ +#include "config.h" + #include "test.h" #include "xkbcommon/xkbcommon-x11.h" @@ -34,6 +36,7 @@ main(void) struct xkb_keymap *keymap; struct xkb_state *state; char *dump; + int exit_code = 0; /* * The next two steps depend on a running X server with XKB support. @@ -41,16 +44,20 @@ main(void) * So we don't want a FAIL here. */ conn = xcb_connect(NULL, NULL); - if (!conn || xcb_connection_has_error(conn)) - return SKIP_TEST; + if (!conn || xcb_connection_has_error(conn)) { + exit_code = SKIP_TEST; + goto err_conn; + } ret = xkb_x11_setup_xkb_extension(conn, XKB_X11_MIN_MAJOR_XKB_VERSION, XKB_X11_MIN_MINOR_XKB_VERSION, XKB_X11_SETUP_XKB_EXTENSION_NO_FLAGS, NULL, NULL, NULL, NULL); - if (!ret) - return SKIP_TEST; + if (!ret) { + exit_code = SKIP_TEST; + goto err_conn; + } device_id = xkb_x11_get_core_keyboard_device_id(conn); assert(device_id != -1); @@ -71,8 +78,9 @@ main(void) free(dump); xkb_state_unref(state); xkb_keymap_unref(keymap); +err_conn: xcb_disconnect(conn); xkb_context_unref(ctx); - return 0; + return exit_code; }