Signed-off-by: Jonas Ådahl <jad...@gmail.com> --- src/connection.c | 4 ++-- src/wayland-client.c | 12 +++--------- src/wayland-private.h | 6 ++++++ src/wayland-server.c | 6 ++---- src/wayland-shm.c | 4 +--- 5 files changed, 14 insertions(+), 18 deletions(-)
diff --git a/src/connection.c b/src/connection.c index 6742f19..45a2e78 100644 --- a/src/connection.c +++ b/src/connection.c @@ -163,10 +163,10 @@ wl_connection_create(int fd) { struct wl_connection *connection; - connection = malloc(sizeof *connection); + connection = zalloc(sizeof *connection); if (connection == NULL) return NULL; - memset(connection, 0, sizeof *connection); + connection->fd = fd; return connection; diff --git a/src/wayland-client.c b/src/wayland-client.c index 509be08..613767e 100644 --- a/src/wayland-client.c +++ b/src/wayland-client.c @@ -331,12 +331,10 @@ proxy_create(struct wl_proxy *factory, const struct wl_interface *interface) struct wl_proxy *proxy; struct wl_display *display = factory->display; - proxy = malloc(sizeof *proxy); + proxy = zalloc(sizeof *proxy); if (proxy == NULL) return NULL; - memset(proxy, 0, sizeof *proxy); - proxy->object.interface = interface; proxy->display = display; proxy->queue = factory->queue; @@ -387,12 +385,10 @@ wl_proxy_create_for_id(struct wl_proxy *factory, struct wl_proxy *proxy; struct wl_display *display = factory->display; - proxy = malloc(sizeof *proxy); + proxy = zalloc(sizeof *proxy); if (proxy == NULL) return NULL; - memset(proxy, 0, sizeof *proxy); - proxy->object.interface = interface; proxy->object.id = id; proxy->display = display; @@ -817,14 +813,12 @@ wl_display_connect_to_fd(int fd) if (debug && (strstr(debug, "client") || strstr(debug, "1"))) debug_client = 1; - display = malloc(sizeof *display); + display = zalloc(sizeof *display); if (display == NULL) { close(fd); return NULL; } - memset(display, 0, sizeof *display); - display->fd = fd; wl_map_init(&display->objects, WL_MAP_CLIENT_SIDE); wl_event_queue_init(&display->default_queue, display); diff --git a/src/wayland-private.h b/src/wayland-private.h index 58ac952..786b3a0 100644 --- a/src/wayland-private.h +++ b/src/wayland-private.h @@ -216,4 +216,10 @@ struct wl_display; struct wl_array * wl_display_get_additional_shm_formats(struct wl_display *display); +static inline void * +zalloc(size_t s) +{ + return calloc(s, 1); +} + #endif diff --git a/src/wayland-server.c b/src/wayland-server.c index 55c0cf9..9e26b18 100644 --- a/src/wayland-server.c +++ b/src/wayland-server.c @@ -415,11 +415,10 @@ wl_client_create(struct wl_display *display, int fd) struct wl_client *client; socklen_t len; - client = malloc(sizeof *client); + client = zalloc(sizeof *client); if (client == NULL) return NULL; - memset(client, 0, sizeof *client); client->display = display; client->source = wl_event_loop_add_fd(display->loop, fd, WL_EVENT_READABLE, @@ -854,11 +853,10 @@ wl_socket_alloc(void) { struct wl_socket *s; - s = malloc(sizeof *s); + s = zalloc(sizeof *s); if (!s) return NULL; - memset(s, 0, sizeof *s); s->fd = -1; s->fd_lock = -1; diff --git a/src/wayland-shm.c b/src/wayland-shm.c index 0cd8c11..359c3bd 100644 --- a/src/wayland-shm.c +++ b/src/wayland-shm.c @@ -536,12 +536,10 @@ wl_shm_buffer_begin_access(struct wl_shm_buffer *buffer) sigbus_data = pthread_getspecific(wl_shm_sigbus_data_key); if (sigbus_data == NULL) { - sigbus_data = malloc(sizeof *sigbus_data); + sigbus_data = zalloc(sizeof *sigbus_data); if (sigbus_data == NULL) return; - memset(sigbus_data, 0, sizeof *sigbus_data); - pthread_setspecific(wl_shm_sigbus_data_key, sigbus_data); } -- 2.4.3 _______________________________________________ wayland-devel mailing list wayland-devel@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/wayland-devel