diff --git a/src/wayland-server-core.h b/src/wayland-server-core.h index 26c527ef..b1baa25f 100644 --- a/src/wayland-server-core.h +++ b/src/wayland-server-core.h @@ -550,6 +550,10 @@ void wl_resource_queue_event_array(struct wl_resource *resource, uint32_t opcode, union wl_argument *args); +void +wl_resource_post_error_vargs(struct wl_resource *resource, + uint32_t code, const char *msg, va_list argp); + void wl_resource_post_error(struct wl_resource *resource, uint32_t code, const char *msg, ...) WL_PRINTF(3, 4); diff --git a/src/wayland-server.c b/src/wayland-server.c index c54a6d64..5ea9101b 100644 --- a/src/wayland-server.c +++ b/src/wayland-server.c @@ -288,7 +288,16 @@ wl_resource_queue_event(struct wl_resource *resource, uint32_t opcode, ...) wl_resource_queue_event_array(resource, opcode, args); } -static void +/** Post a protocol error + * + * \param resource The resource object + * \param code The error code + * \param msg The error message format string + * \param argp The format string argument list + * + * \memberof wl_resource + */ +WL_EXPORT void wl_resource_post_error_vargs(struct wl_resource *resource, uint32_t code, const char *msg, va_list argp) { @@ -310,7 +319,6 @@ wl_resource_post_error_vargs(struct wl_resource *resource, wl_resource_post_event(client->display_resource, WL_DISPLAY_ERROR, resource, code, buffer); client->error = true; - } /** Post a protocol error