From bdd8377312b275625ad4e9c07f79e18d157be298 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Kristian=20H=C3=B8gsberg?= Date: Mon, 12 Aug 2013 21:45:19 -0700 Subject: [PATCH] screenshooter: Only link to $(CLIENT_LIBS) not libtoytoolkit.la This application doesn't use toytoolkit, so don't link to it. We have to add a copy of xmalloc, to link without toytoolkit. --- clients/Makefile.am | 6 ++++-- clients/screenshot.c | 20 +++++++++++++++++++- 2 files changed, 23 insertions(+), 3 deletions(-) diff --git a/clients/Makefile.am b/clients/Makefile.am index 09963cc6..1f7d9dc8 100644 --- a/clients/Makefile.am +++ b/clients/Makefile.am @@ -109,8 +109,10 @@ weston_flower_LDADD = libtoytoolkit.la weston_screenshooter_SOURCES = \ screenshot.c \ screenshooter-protocol.c \ - screenshooter-client-protocol.h -weston_screenshooter_LDADD = libtoytoolkit.la + screenshooter-client-protocol.h \ + ../shared/os-compatibility.c \ + ../shared/os-compatibility.h +weston_screenshooter_LDADD = $(CLIENT_LIBS) weston_terminal_SOURCES = terminal.c weston_terminal_LDADD = libtoytoolkit.la -lutil diff --git a/clients/screenshot.c b/clients/screenshot.c index d58d8b1a..1c0f203a 100644 --- a/clients/screenshot.c +++ b/clients/screenshot.c @@ -20,7 +20,10 @@ * OF THIS SOFTWARE. */ +#include "config.h" + #include +#include #include #include #include @@ -75,6 +78,21 @@ display_handle_geometry(void *data, } } +static void * +xmalloc(size_t size) +{ + void *p; + + p = malloc(size); + if (p == NULL) { + fprintf(stderr, "%s: out of memory\n", + program_invocation_short_name); + exit(EXIT_FAILURE); + } + + return p; +} + static void display_handle_mode(void *data, struct wl_output *wl_output, @@ -185,7 +203,7 @@ write_png(int width, int height) buffer_stride = width * 4; - data = malloc(buffer_stride * height); + data = xmalloc(buffer_stride * height); if (!data) return;