configure.ac | 2 +- cursor/wayland-cursor.pc.in | 8 ++++---- protocol/wayland.xml | 2 +- src/Makefile.am | 1 + src/scanner.c | 2 +- src/wayland-client.c | 31 +++++++++++++++++++++++++++---- src/wayland-client.h | 2 ++ src/wayland-client.pc.in | 8 ++++---- src/wayland-server.c | 2 +- src/wayland-server.pc.in | 8 ++++---- 10 files changed, 46 insertions(+), 20 deletions(-)
New commits: commit 64e37842983349dcb3bfd102885669db0c01b16c Author: Kristian Høgsberg <k...@bitplanet.net> Date: Fri Nov 30 16:00:00 2012 -0500 configure.ac: Bump version to 1.0.2 diff --git a/configure.ac b/configure.ac index aa7a62a..0d842e1 100644 --- a/configure.ac +++ b/configure.ac @@ -2,7 +2,7 @@ AC_PREREQ([2.64]) m4_define([wayland_major_version], [1]) m4_define([wayland_minor_version], [0]) -m4_define([wayland_micro_version], [1]) +m4_define([wayland_micro_version], [2]) m4_define([wayland_version], [wayland_major_version.wayland_minor_version.wayland_micro_version]) commit da999862716ea7824c254de68af4080d930384ea Author: Kristian Høgsberg <k...@bitplanet.net> Date: Fri Nov 30 16:11:04 2012 -0500 client: Update libtool version for new entry points We've added wl_display_dispatch_queue_pending, so update the libtool library current and age fields accordingly. diff --git a/src/Makefile.am b/src/Makefile.am index f93954e..e1d04ea 100644 --- a/src/Makefile.am +++ b/src/Makefile.am @@ -27,6 +27,7 @@ libwayland_server_la_SOURCES = \ event-loop.c libwayland_client_la_LIBADD = $(FFI_LIBS) libwayland-util.la -lrt -lm +libwayland_client_la_LDFLAGS = -version-info 1:0:1 libwayland_client_la_SOURCES = \ wayland-protocol.c \ wayland-client.c commit 5c34b15f033eb0eb7062e99f7761d4cbd93af61e Author: Kristian Høgsberg <k...@bitplanet.net> Date: Fri Nov 30 14:05:32 2012 -0500 client: Add \since tag for wl_display_dispatch_queue_pending() documentation diff --git a/src/wayland-client.c b/src/wayland-client.c index 5ba2c45..785f4ee 100644 --- a/src/wayland-client.c +++ b/src/wayland-client.c @@ -940,6 +940,7 @@ wl_display_dispatch_queue(struct wl_display *display, * If there are no events queued, this functions return immediately. * * \memberof wl_display + * \since 1.0.2 */ WL_EXPORT int wl_display_dispatch_queue_pending(struct wl_display *display, commit 65a0bbdbdeaa4552a1af4ad4b1f3f4960305444f Author: Quentin Glidic <sardemff7+...@sardemff7.net> Date: Tue Nov 27 22:35:18 2012 +0100 pkgconfig: Use configure provided directories https://bugs.freedesktop.org/show_bug.cgi?id=57630 diff --git a/cursor/wayland-cursor.pc.in b/cursor/wayland-cursor.pc.in index b10d039..fbbf5ff 100644 --- a/cursor/wayland-cursor.pc.in +++ b/cursor/wayland-cursor.pc.in @@ -1,8 +1,8 @@ prefix=@prefix@ -exec_prefix=${prefix} -libdir=${exec_prefix}/lib -includedir=${prefix}/include - +exec_prefix=@exec_prefix@ +libdir=@libdir@ +includedir=@includedir@ + Name: Wayland Cursor Description: Wayland cursor helper library Version: @WAYLAND_VERSION@ diff --git a/src/wayland-client.pc.in b/src/wayland-client.pc.in index b3df950..e453018 100644 --- a/src/wayland-client.pc.in +++ b/src/wayland-client.pc.in @@ -1,8 +1,8 @@ prefix=@prefix@ -exec_prefix=${prefix} -libdir=${exec_prefix}/lib -includedir=${prefix}/include - +exec_prefix=@exec_prefix@ +libdir=@libdir@ +includedir=@includedir@ + Name: Wayland Client Description: Wayland client side library Version: @WAYLAND_VERSION@ diff --git a/src/wayland-server.pc.in b/src/wayland-server.pc.in index 8e3214e..18a0b52 100644 --- a/src/wayland-server.pc.in +++ b/src/wayland-server.pc.in @@ -1,8 +1,8 @@ prefix=@prefix@ -exec_prefix=${prefix} -libdir=${exec_prefix}/lib -includedir=${prefix}/include - +exec_prefix=@exec_prefix@ +libdir=@libdir@ +includedir=@includedir@ + Name: Wayland Server Description: Server side implementation of the Wayland protocol Version: @WAYLAND_VERSION@ commit 00639de12050c8755965a569de4f6df9dc36171f Author: Ander Conselvan de Oliveira <ander.conselvan.de.olive...@intel.com> Date: Tue Nov 27 17:03:40 2012 +0200 scanner: Fix wrong restriction on since field The scanner would not allow two consecutive requests on an interface to have the same since number, so if a new version of an interface added two new request the version number would have to be increased by two. diff --git a/src/scanner.c b/src/scanner.c index 5793c20..6d2eddd 100644 --- a/src/scanner.c +++ b/src/scanner.c @@ -356,7 +356,7 @@ start_element(void *data, const char *element_name, const char **atts) version = strtol(since, &end, 0); if (errno == EINVAL || end == since || *end != '\0') fail(ctx, "invalid integer\n"); - if (version <= ctx->interface->since) + if (version < ctx->interface->since) fail(ctx, "since version not increasing\n"); ctx->interface->since = version; } commit d7a63fdbfb8fcfcf4b2a81bc4773958ebd785d15 Author: Jonas Ådahl <jad...@gmail.com> Date: Mon Nov 26 23:25:53 2012 +0100 client: Don't cancel a roundtrip when any event is received Since wl_display_dispatch() returns the number of processed events or -1 on error, only cancel the roundtrip if an -1 is returned. This also fixes a potential memory corruption bug happening when wl_display_roundtrip() does an early return and the callback later writes to the then out of scope stack allocated `done' parameter. Introduced by 33b7637b4500a682018b503837b8aca9afae36f2. Signed-off-by: Jonas Ådahl <jad...@gmail.com> diff --git a/src/wayland-client.c b/src/wayland-client.c index 5fecc01..5ba2c45 100644 --- a/src/wayland-client.c +++ b/src/wayland-client.c @@ -649,9 +649,12 @@ wl_display_roundtrip(struct wl_display *display) done = 0; callback = wl_display_sync(display); wl_callback_add_listener(callback, &sync_listener, &done); - while (!done && !ret) + while (!done && ret >= 0) ret = wl_display_dispatch(display); + if (ret == -1 && !done) + wl_callback_destroy(callback); + return ret; } commit 5df752ab16f4a343416952ccbc07ab6aa0217429 Author: Tiago Vignatti <tiago.vigna...@intel.com> Date: Thu Nov 22 18:09:32 2012 -0200 doc: Fix typos Signed-off-by: Tiago Vignatti <tiago.vigna...@intel.com> diff --git a/protocol/wayland.xml b/protocol/wayland.xml index ca3c56f..cc8fb06 100644 --- a/protocol/wayland.xml +++ b/protocol/wayland.xml @@ -102,7 +102,7 @@ When a client creates a registry object, the registry object will emit a global event for each global currently in the - regitry. Globals come and go as a result of device hotplugs, + registry. Globals come and go as a result of device hotplugs, reconfiguration or other events, and the registry will send out @global and @global_remove events to keep the client up to date with the changes. To mark the end of the initial burst of diff --git a/src/wayland-client.c b/src/wayland-client.c index 56dbb4f..5fecc01 100644 --- a/src/wayland-client.c +++ b/src/wayland-client.c @@ -298,11 +298,11 @@ wl_proxy_destroy(struct wl_proxy *proxy) * \return 0 on success or -1 on failure * * Set proxy's listener to \c implementation and its user data to - * \c data. Ifa listener has already been set, this functions + * \c data. If a listener has already been set, this function * fails and nothing is changed. * * \c implementation is a vector of function pointers. For an opcode - * \c n, \c implemention[n] should point to the handler of \c n for + * \c n, \c implementation[n] should point to the handler of \c n for * the given object. * * \memberof wl_proxy commit fb205078819380538e6c0793f10ce603d7368da3 Author: Ander Conselvan de Oliveira <ander.conselvan.de.olive...@intel.com> Date: Thu Nov 22 15:34:48 2012 +0200 client: Add an entry point for dispatching a queue without blocking On the client side EGL, all the wl_buffer.release events need to be processed before buffer allocation, otherwise a third buffer might be allocated unnecessarily. However, the buffer allocation should not block in the case no event was received. In order to do that, a non-blocking queue dispatch function is needed. diff --git a/src/wayland-client.c b/src/wayland-client.c index 4d0637b..56dbb4f 100644 --- a/src/wayland-client.c +++ b/src/wayland-client.c @@ -926,6 +926,25 @@ wl_display_dispatch_queue(struct wl_display *display, return dispatch_queue(display, queue, 1); } +/** Dispatch pending events in an event queue + * + * \param display The display context object + * \param queue The event queue to dispatch + * \return The number of dispatched events on success or -1 on failure + * + * Dispatch all incoming events for objects assigned to the given + * event queue. On failure -1 is returned and errno set appropriately. + * If there are no events queued, this functions return immediately. + * + * \memberof wl_display + */ +WL_EXPORT int +wl_display_dispatch_queue_pending(struct wl_display *display, + struct wl_event_queue *queue) +{ + return dispatch_queue(display, queue, 0); +} + /** Process incoming events * * \param display The display context object diff --git a/src/wayland-client.h b/src/wayland-client.h index 71fe450..8d2b8df 100644 --- a/src/wayland-client.h +++ b/src/wayland-client.h @@ -145,6 +145,8 @@ int wl_display_get_fd(struct wl_display *display); int wl_display_dispatch(struct wl_display *display); int wl_display_dispatch_queue(struct wl_display *display, struct wl_event_queue *queue); +int wl_display_dispatch_queue_pending(struct wl_display *display, + struct wl_event_queue *queue); int wl_display_dispatch_pending(struct wl_display *display); int wl_display_get_error(struct wl_display *display); commit 0f5d41e3bbc2741c86b4c85f9f52b22cf35aa71b Author: Kristian Høgsberg <k...@bitplanet.net> Date: Wed Nov 21 17:14:55 2012 -0500 debug: Allow WAYLAND_DEBUG=server/client for server/client side only debug By default the server will dump protocol for both the server and its clients when run with WAYLAND_DEBUG=1. That's still the case, but it now also understands WAYLAND_DEBUG=client or WAYLAND_DEBUG=server, which will only enable debug dumping on either client or server side. diff --git a/src/wayland-client.c b/src/wayland-client.c index 5ab000c..4d0637b 100644 --- a/src/wayland-client.c +++ b/src/wayland-client.c @@ -502,7 +502,7 @@ wl_display_connect_to_fd(int fd) const char *debug; debug = getenv("WAYLAND_DEBUG"); - if (debug) + if (debug && (strstr(debug, "client") || strstr(debug, "1"))) wl_debug = 1; display = malloc(sizeof *display); diff --git a/src/wayland-server.c b/src/wayland-server.c index acbab9a..f7f4c14 100644 --- a/src/wayland-server.c +++ b/src/wayland-server.c @@ -1078,7 +1078,7 @@ wl_display_create(void) const char *debug; debug = getenv("WAYLAND_DEBUG"); - if (debug) + if (debug && (strstr(debug, "server") || strstr(debug, "1"))) wl_debug = 1; display = malloc(sizeof *display); -- To UNSUBSCRIBE, email to debian-x-requ...@lists.debian.org with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org Archive: http://lists.debian.org/e1teqjp-0006pm...@vasks.debian.org