summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPeter Hutterer <peter.hutterer@who-t.net>2013-08-08 11:57:05 +1000
committerKristian Høgsberg <krh@bitplanet.net>2013-08-08 13:46:13 -0700
commitf3d62276d20750e636fc82bc89b3c4c23576299d (patch)
tree05fee3d04531b3e3b303d82a546e26c1f1d96d81
parentb1bc4a68b0bc2d7b391c7484a52a46a636ad89fc (diff)
downloadweston-f3d62276d20750e636fc82bc89b3c4c23576299d.tar.gz
weston-f3d62276d20750e636fc82bc89b3c4c23576299d.tar.bz2
weston-f3d62276d20750e636fc82bc89b3c4c23576299d.zip
malloc + memset -> zalloc
And for clients using the xmalloc helper, use xzalloc. Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
-rw-r--r--clients/clickdot.c4
-rw-r--r--clients/cliptest.c4
-rw-r--r--clients/desktop-shell.c16
-rw-r--r--clients/dnd.c4
-rw-r--r--clients/gears.c3
-rw-r--r--clients/image.c3
-rw-r--r--clients/keyboard.c4
-rw-r--r--clients/nested.c6
-rw-r--r--clients/resizor.c4
-rw-r--r--clients/tablet-shell.c8
-rw-r--r--clients/terminal.c10
-rw-r--r--clients/view.c3
-rw-r--r--clients/window.c30
-rw-r--r--clients/window.h3
-rw-r--r--src/clipboard.c3
-rw-r--r--src/cms-colord.c3
-rw-r--r--src/cms-static.c3
-rw-r--r--src/compositor-drm.c12
-rw-r--r--src/compositor-headless.c7
-rw-r--r--src/compositor-rdp.c7
-rw-r--r--src/compositor-rpi.c3
-rw-r--r--src/compositor-wayland.c11
-rw-r--r--src/compositor-x11.c8
-rw-r--r--src/compositor.c4
-rw-r--r--src/data-device.c3
-rw-r--r--src/evdev.c3
-rw-r--r--src/input.c9
-rw-r--r--src/screenshooter.c3
-rw-r--r--src/shell.c3
-rw-r--r--src/tablet-shell.c3
-rw-r--r--src/tty.c3
-rw-r--r--src/udev-seat.c3
-rw-r--r--src/xwayland/launcher.c4
-rw-r--r--src/xwayland/window-manager.c6
-rw-r--r--tests/weston-test.c3
35 files changed, 68 insertions, 138 deletions
diff --git a/clients/clickdot.c b/clients/clickdot.c
index c5fbc645..aebe4db1 100644
--- a/clients/clickdot.c
+++ b/clients/clickdot.c
@@ -247,9 +247,7 @@ clickdot_create(struct display *display)
{
struct clickdot *clickdot;
- clickdot = xmalloc(sizeof *clickdot);
- memset(clickdot, 0, sizeof *clickdot);
-
+ clickdot = xzalloc(sizeof *clickdot);
clickdot->window = window_create(display);
clickdot->widget = frame_create(clickdot->window, clickdot);
window_set_title(clickdot->window, "Wayland ClickDot");
diff --git a/clients/cliptest.c b/clients/cliptest.c
index 7d58551a..4b778087 100644
--- a/clients/cliptest.c
+++ b/clients/cliptest.c
@@ -791,9 +791,7 @@ cliptest_create(struct display *display)
{
struct cliptest *cliptest;
- cliptest = xmalloc(sizeof *cliptest);
- memset(cliptest, 0, sizeof *cliptest);
-
+ cliptest = xzalloc(sizeof *cliptest);
cliptest->surface.geometry = &cliptest->geometry;
cliptest->surface.transform.enabled = 0;
geometry_init(&cliptest->geometry);
diff --git a/clients/desktop-shell.c b/clients/desktop-shell.c
index 9bd0adeb..b17de3ab 100644
--- a/clients/desktop-shell.c
+++ b/clients/desktop-shell.c
@@ -409,8 +409,7 @@ panel_add_clock(struct panel *panel)
return;
}
- clock = xmalloc(sizeof *clock);
- memset(clock, 0, sizeof *clock);
+ clock = xzalloc(sizeof *clock);
clock->panel = panel;
panel->clock = clock;
clock->clock_fd = timerfd;
@@ -512,8 +511,7 @@ panel_create(struct desktop *desktop)
struct panel *panel;
struct weston_config_section *s;
- panel = xmalloc(sizeof *panel);
- memset(panel, 0, sizeof *panel);
+ panel = xzalloc(sizeof *panel);
panel->base.configure = panel_configure;
panel->window = window_create_custom(desktop->display);
@@ -582,8 +580,7 @@ panel_add_launcher(struct panel *panel, const char *icon, const char *path)
char *start, *p, *eq, **ps;
int i, j, k;
- launcher = xmalloc(sizeof *launcher);
- memset(launcher, 0, sizeof *launcher);
+ launcher = xzalloc(sizeof *launcher);
launcher->icon = load_icon_or_fallback(icon);
launcher->path = strdup(path);
@@ -841,8 +838,7 @@ unlock_dialog_create(struct desktop *desktop)
struct display *display = desktop->display;
struct unlock_dialog *dialog;
- dialog = xmalloc(sizeof *dialog);
- memset(dialog, 0, sizeof *dialog);
+ dialog = xzalloc(sizeof *dialog);
dialog->window = window_create_custom(display);
dialog->widget = frame_create(dialog->window, dialog);
@@ -987,9 +983,7 @@ background_create(struct desktop *desktop)
struct weston_config_section *s;
char *type;
- background = xmalloc(sizeof *background);
- memset(background, 0, sizeof *background);
-
+ background = xzalloc(sizeof *background);
background->base.configure = background_configure;
background->window = window_create_custom(desktop->display);
background->widget = window_add_widget(background->window, background);
diff --git a/clients/dnd.c b/clients/dnd.c
index ff46fd7a..cfdf92fa 100644
--- a/clients/dnd.c
+++ b/clients/dnd.c
@@ -567,9 +567,7 @@ dnd_create(struct display *display)
int32_t width, height;
unsigned int i;
- dnd = xmalloc(sizeof *dnd);
- memset(dnd, 0, sizeof *dnd);
-
+ dnd = xzalloc(sizeof *dnd);
dnd->window = window_create(display);
dnd->widget = frame_create(dnd->window, dnd);
window_set_title(dnd->window, "Wayland Drag and Drop Demo");
diff --git a/clients/gears.c b/clients/gears.c
index e7249eb2..30f4e688 100644
--- a/clients/gears.c
+++ b/clients/gears.c
@@ -401,8 +401,7 @@ gears_create(struct display *display)
struct timeval tv;
int i;
- gears = malloc(sizeof *gears);
- memset(gears, 0, sizeof *gears);
+ gears = zalloc(sizeof *gears);
gears->d = display;
gears->window = window_create(display);
gears->widget = frame_create(gears->window, gears);
diff --git a/clients/image.c b/clients/image.c
index 1f3c77c2..4d3f3b87 100644
--- a/clients/image.c
+++ b/clients/image.c
@@ -358,10 +358,9 @@ image_create(struct display *display, const char *filename,
struct image *image;
char *b, *copy, title[512];;
- image = malloc(sizeof *image);
+ image = zalloc(sizeof *image);
if (image == NULL)
return image;
- memset(image, 0, sizeof *image);
copy = strdup(filename);
b = basename(copy);
diff --git a/clients/keyboard.c b/clients/keyboard.c
index 5fe5d9d5..9c5cbc5a 100644
--- a/clients/keyboard.c
+++ b/clients/keyboard.c
@@ -836,9 +836,7 @@ keyboard_create(struct output *output, struct virtual_keyboard *virtual_keyboard
layout = get_current_layout(virtual_keyboard);
- keyboard = xmalloc(sizeof *keyboard);
- memset(keyboard, 0, sizeof *keyboard);
-
+ keyboard = xzalloc(sizeof *keyboard);
keyboard->keyboard = virtual_keyboard;
keyboard->window = window_create_custom(virtual_keyboard->display);
keyboard->widget = window_add_widget(keyboard->window, keyboard);
diff --git a/clients/nested.c b/clients/nested.c
index ced0b980..aa4bf34b 100644
--- a/clients/nested.c
+++ b/clients/nested.c
@@ -404,13 +404,12 @@ compositor_create_surface(struct wl_client *client,
struct nested *nested = wl_resource_get_user_data(resource);
struct nested_surface *surface;
- surface = malloc(sizeof *surface);
+ surface = zalloc(sizeof *surface);
if (surface == NULL) {
wl_resource_post_no_memory(resource);
return;
}
- memset(surface, 0, sizeof *surface);
surface->nested = nested;
display_acquire_window_surface(nested->display,
@@ -568,10 +567,9 @@ nested_create(struct display *display)
{
struct nested *nested;
- nested = malloc(sizeof *nested);
+ nested = zalloc(sizeof *nested);
if (nested == NULL)
return nested;
- memset(nested, 0, sizeof *nested);
nested->window = window_create(display);
nested->widget = frame_create(nested->window, nested);
diff --git a/clients/resizor.c b/clients/resizor.c
index 49b28175..68e4bf9a 100644
--- a/clients/resizor.c
+++ b/clients/resizor.c
@@ -233,9 +233,7 @@ resizor_create(struct display *display)
{
struct resizor *resizor;
- resizor = xmalloc(sizeof *resizor);
- memset(resizor, 0, sizeof *resizor);
-
+ resizor = xzalloc(sizeof *resizor);
resizor->window = window_create(display);
resizor->widget = frame_create(resizor->window, resizor);
window_set_title(resizor->window, "Wayland Resizor");
diff --git a/clients/tablet-shell.c b/clients/tablet-shell.c
index 3b52069a..436565a3 100644
--- a/clients/tablet-shell.c
+++ b/clients/tablet-shell.c
@@ -230,9 +230,7 @@ homescreen_create(struct tablet *tablet)
{
struct homescreen *homescreen;
- homescreen = xmalloc(sizeof *homescreen);
- memset(homescreen, 0, sizeof *homescreen);
-
+ homescreen = zalloc (sizeof *homescreen);
homescreen->window = window_create_custom(tablet->display);
homescreen->widget =
window_add_widget(homescreen->window, homescreen);
@@ -248,9 +246,7 @@ lockscreen_create(struct tablet *tablet)
{
struct lockscreen *lockscreen;
- lockscreen = xmalloc(sizeof *lockscreen);
- memset(lockscreen, 0, sizeof *lockscreen);
-
+ lockscreen = zalloc (sizeof *lockscreen);
lockscreen->window = window_create_custom(tablet->display);
lockscreen->widget =
window_add_widget(lockscreen->window, lockscreen);
diff --git a/clients/terminal.c b/clients/terminal.c
index 1cc26d0e..32d738c8 100644
--- a/clients/terminal.c
+++ b/clients/terminal.c
@@ -710,12 +710,10 @@ terminal_resize_cells(struct terminal *terminal, int width, int height)
data_pitch = width * sizeof(union utf8_char);
size = data_pitch * height;
- data = malloc(size);
+ data = zalloc(size);
attr_pitch = width * sizeof(struct attr);
data_attr = malloc(attr_pitch * height);
- tab_ruler = malloc(width);
- memset(data, 0, size);
- memset(tab_ruler, 0, width);
+ tab_ruler = zalloc(width);
attr_init(data_attr, terminal->curr_attr, width * height);
if (terminal->data && terminal->data_attr) {
if (width > terminal->width)
@@ -2552,9 +2550,7 @@ terminal_create(struct display *display)
cairo_t *cr;
cairo_text_extents_t text_extents;
- terminal = xmalloc(sizeof *terminal);
-
- memset(terminal, 0, sizeof *terminal);
+ terminal = xzalloc(sizeof *terminal);
terminal->color_scheme = &DEFAULT_COLORS;
terminal_init(terminal);
terminal->margin_top = 0;
diff --git a/clients/view.c b/clients/view.c
index 110a8298..f5b1843f 100644
--- a/clients/view.c
+++ b/clients/view.c
@@ -230,10 +230,9 @@ view_create(struct display *display,
GFile *file = NULL;
GError *error = NULL;
- view = malloc(sizeof *view);
+ view = zalloc(sizeof *view);
if (view == NULL)
return view;
- memset(view, 0, sizeof *view);
file = g_file_new_for_commandline_arg(filename);
basename = g_file_get_basename(file);
diff --git a/clients/window.c b/clients/window.c
index ac35285d..9ec97864 100644
--- a/clients/window.c
+++ b/clients/window.c
@@ -1608,8 +1608,7 @@ widget_create(struct window *window, struct surface *surface, void *data)
{
struct widget *widget;
- widget = xmalloc(sizeof *widget);
- memset(widget, 0, sizeof *widget);
+ widget = xzalloc(sizeof *widget);
widget->window = window;
widget->surface = surface;
widget->user_data = data;
@@ -2390,9 +2389,7 @@ frame_button_create(struct frame *frame, void *data, enum frame_button_action ty
struct frame_button *frame_button;
const char *icon = data;
- frame_button = xmalloc(sizeof *frame_button);
- memset(frame_button, 0, sizeof *frame_button);
-
+ frame_button = xzalloc (sizeof *frame_button);
frame_button->icon = cairo_image_surface_create_from_png(icon);
frame_button->widget = widget_add_widget(frame->widget, frame_button);
frame_button->frame = frame;
@@ -2621,9 +2618,7 @@ frame_create(struct window *window, void *data)
{
struct frame *frame;
- frame = xmalloc(sizeof *frame);
- memset(frame, 0, sizeof *frame);
-
+ frame = xzalloc(sizeof *frame);
frame->widget = window_add_widget(window, frame);
frame->child = widget_add_widget(frame->widget, data);
@@ -4209,8 +4204,7 @@ window_create_internal(struct display *display,
struct window *window;
struct surface *surface;
- window = xmalloc(sizeof *window);
- memset(window, 0, sizeof *window);
+ window = xzalloc(sizeof *window);
wl_list_init(&window->subsurface_list);
window->display = display;
window->parent = parent;
@@ -4562,11 +4556,10 @@ display_add_output(struct display *d, uint32_t id)
{
struct output *output;
- output = malloc(sizeof *output);
+ output = zalloc(sizeof *output);
if (output == NULL)
return;
- memset(output, 0, sizeof *output);
output->display = d;
output->scale = 1;
output->output =
@@ -4692,11 +4685,10 @@ display_add_input(struct display *d, uint32_t id)
{
struct input *input;
- input = malloc(sizeof *input);
+ input = zalloc(sizeof *input);
if (input == NULL)
return;
- memset(input, 0, sizeof *input);
input->display = d;
input->seat = wl_registry_bind(d->registry, id, &wl_seat_interface, 1);
input->pointer_focus = NULL;
@@ -4998,12 +4990,10 @@ display_create(int *argc, char *argv[])
wl_log_set_handler_client(log_handler);
- d = malloc(sizeof *d);
+ d = zalloc(sizeof *d);
if (d == NULL)
return NULL;
- memset(d, 0, sizeof *d);
-
d->display = wl_display_connect(NULL);
if (d->display == NULL) {
fprintf(stderr, "failed to connect to Wayland display: %m\n");
@@ -5353,6 +5343,12 @@ xmalloc(size_t s)
return fail_on_null(malloc(s));
}
+void *
+xzalloc(size_t s)
+{
+ return fail_on_null(zalloc(s));
+}
+
char *
xstrdup(const char *s)
{
diff --git a/clients/window.h b/clients/window.h
index e045b956..3c600819 100644
--- a/clients/window.h
+++ b/clients/window.h
@@ -27,6 +27,7 @@
#include <wayland-client.h>
#include <cairo.h>
#include "../shared/config-parser.h"
+#include "../shared/zalloc.h"
#include "subsurface-client-protocol.h"
#define ARRAY_LENGTH(a) (sizeof (a) / sizeof (a)[0])
@@ -57,6 +58,8 @@ void *
fail_on_null(void *p);
void *
xmalloc(size_t s);
+void *
+xzalloc(size_t s);
char *
xstrdup(const char *s);
diff --git a/src/clipboard.c b/src/clipboard.c
index 54f06e61..5a3a02d2 100644
--- a/src/clipboard.c
+++ b/src/clipboard.c
@@ -283,10 +283,9 @@ clipboard_create(struct weston_seat *seat)
{
struct clipboard *clipboard;
- clipboard = malloc(sizeof *clipboard);
+ clipboard = zalloc(sizeof *clipboard);
if (clipboard == NULL)
return NULL;
- memset(clipboard, 0, sizeof *clipboard);
clipboard->seat = seat;
clipboard->selection_listener.notify = clipboard_set_selection;
diff --git a/src/cms-colord.c b/src/cms-colord.c
index 691b2e61..4ff3aaca 100644
--- a/src/cms-colord.c
+++ b/src/cms-colord.c
@@ -494,10 +494,9 @@ module_init(struct weston_compositor *ec,
weston_log("colord: initialized\n");
/* create local state object */
- cms = malloc(sizeof *cms);
+ cms = zalloc(sizeof *cms);
if (cms == NULL)
return -1;
- memset(cms, 0, sizeof *cms);
cms->ec = ec;
#if !GLIB_CHECK_VERSION(2,36,0)
g_type_init();
diff --git a/src/cms-static.c b/src/cms-static.c
index 8a36ed9b..ad54fd15 100644
--- a/src/cms-static.c
+++ b/src/cms-static.c
@@ -94,10 +94,9 @@ module_init(struct weston_compositor *ec,
weston_log("cms-static: initialized\n");
/* create local state object */
- cms = malloc(sizeof *cms);
+ cms = zalloc(sizeof *cms);
if (cms == NULL)
return -1;
- memset(cms, 0, sizeof *cms);
cms->ec = ec;
cms->destroy_listener.notify = cms_notifier_destroy;
diff --git a/src/compositor-drm.c b/src/compositor-drm.c
index a47fe36b..b9e3fc97 100644
--- a/src/compositor-drm.c
+++ b/src/compositor-drm.c
@@ -234,7 +234,7 @@ drm_fb_create_dumb(struct drm_compositor *ec, unsigned width, unsigned height)
struct drm_mode_destroy_dumb destroy_arg;
struct drm_mode_map_dumb map_arg;
- fb = calloc(1, sizeof *fb);
+ fb = zalloc(sizeof *fb);
if (!fb)
return NULL;
@@ -1771,11 +1771,10 @@ create_output_for_connector(struct drm_compositor *ec,
return -1;
}
- output = malloc(sizeof *output);
+ output = zalloc(sizeof *output);
if (output == NULL)
return -1;
- memset(output, 0, sizeof *output);
output->base.subpixel = drm_subpixel_to_wayland(connector->subpixel);
output->base.make = "unknown";
output->base.model = "unknown";
@@ -2000,7 +1999,7 @@ create_sprites(struct drm_compositor *ec)
if (!plane)
continue;
- sprite = malloc(sizeof(*sprite) + ((sizeof(uint32_t)) *
+ sprite = zalloc(sizeof(*sprite) + ((sizeof(uint32_t)) *
plane->count_formats));
if (!sprite) {
weston_log("%s: out of memory\n",
@@ -2009,8 +2008,6 @@ create_sprites(struct drm_compositor *ec)
continue;
}
- memset(sprite, 0, sizeof *sprite);
-
sprite->possible_crtcs = plane->possible_crtcs;
sprite->plane_id = plane->plane_id;
sprite->current = NULL;
@@ -2451,10 +2448,9 @@ drm_compositor_create(struct wl_display *display,
weston_log("initializing drm backend\n");
- ec = malloc(sizeof *ec);
+ ec = zalloc(sizeof *ec);
if (ec == NULL)
return NULL;
- memset(ec, 0, sizeof *ec);
/* KMS support for sprites is not complete yet, so disable the
* functionality for now. */
diff --git a/src/compositor-headless.c b/src/compositor-headless.c
index dd332422..4a0cc7fb 100644
--- a/src/compositor-headless.c
+++ b/src/compositor-headless.c
@@ -95,10 +95,9 @@ headless_compositor_create_output(struct headless_compositor *c,
struct headless_output *output;
struct wl_event_loop *loop;
- output = malloc(sizeof *output);
+ output = zalloc(sizeof *output);
if (output == NULL)
return -1;
- memset(output, 0, sizeof *output);
output->mode.flags =
WL_OUTPUT_MODE_CURRENT | WL_OUTPUT_MODE_PREFERRED;
@@ -161,12 +160,10 @@ headless_compositor_create(struct wl_display *display,
{
struct headless_compositor *c;
- c = calloc(1, sizeof *c);
+ c = zalloc(sizeof *c);
if (c == NULL)
return NULL;
- memset(c, 0, sizeof *c);
-
if (weston_compositor_init(&c->base, display, argc, argv, config) < 0)
goto err_free;
diff --git a/src/compositor-rdp.c b/src/compositor-rdp.c
index 33ec77d4..191d6737 100644
--- a/src/compositor-rdp.c
+++ b/src/compositor-rdp.c
@@ -445,10 +445,9 @@ rdp_compositor_create_output(struct rdp_compositor *c, int width, int height,
struct wl_event_loop *loop;
struct weston_mode *currentMode, *next;
- output = malloc(sizeof *output);
+ output = zalloc(sizeof *output);
if (output == NULL)
return -1;
- memset(output, 0, sizeof *output);
wl_list_init(&output->peers);
wl_list_init(&output->base.mode_list);
@@ -991,12 +990,10 @@ rdp_compositor_create(struct wl_display *display,
char *fd_str;
int fd;
- c = malloc(sizeof *c);
+ c = zalloc(sizeof *c);
if (c == NULL)
return NULL;
- memset(c, 0, sizeof *c);
-
if (weston_compositor_init(&c->base, display, argc, argv, wconfig) < 0)
goto err_free;
diff --git a/src/compositor-rpi.c b/src/compositor-rpi.c
index af62b30f..a0ac6d31 100644
--- a/src/compositor-rpi.c
+++ b/src/compositor-rpi.c
@@ -598,11 +598,10 @@ evdev_input_create(struct weston_compositor *c, struct udev *udev,
{
struct rpi_seat *seat;
- seat = malloc(sizeof *seat);
+ seat = zalloc(sizeof *seat);
if (seat == NULL)
return;
- memset(seat, 0, sizeof *seat);
weston_seat_init(&seat->base, c, "default");
seat->base.led_update = rpi_led_update;
diff --git a/src/compositor-wayland.c b/src/compositor-wayland.c
index f3a98a87..fbaeb29b 100644
--- a/src/compositor-wayland.c
+++ b/src/compositor-wayland.c
@@ -249,10 +249,9 @@ wayland_compositor_create_output(struct wayland_compositor *c,
{
struct wayland_output *output;
- output = malloc(sizeof *output);
+ output = zalloc(sizeof *output);
if (output == NULL)
return -1;
- memset(output, 0, sizeof *output);
output->mode.flags =
WL_OUTPUT_MODE_CURRENT | WL_OUTPUT_MODE_PREFERRED;
@@ -629,12 +628,10 @@ display_add_seat(struct wayland_compositor *c, uint32_t id)
{
struct wayland_input *input;
- input = malloc(sizeof *input);
+ input = zalloc(sizeof *input);
if (input == NULL)
return;
- memset(input, 0, sizeof *input);
-
weston_seat_init(&input->base, &c->base, "default");
input->compositor = c;
input->seat = wl_registry_bind(c->parent.registry, id,
@@ -725,12 +722,10 @@ wayland_compositor_create(struct wl_display *display,
struct wl_event_loop *loop;
int fd;
- c = malloc(sizeof *c);
+ c = zalloc(sizeof *c);
if (c == NULL)
return NULL;
- memset(c, 0, sizeof *c);
-
if (weston_compositor_init(&c->base, display, argc, argv,
config) < 0)
goto err_free;
diff --git a/src/compositor-x11.c b/src/compositor-x11.c
index 4a732534..a8966128 100644
--- a/src/compositor-x11.c
+++ b/src/compositor-x11.c
@@ -813,12 +813,10 @@ x11_compositor_create_output(struct x11_compositor *c, int x, int y,
XCB_EVENT_MASK_KEYMAP_STATE |
XCB_EVENT_MASK_FOCUS_CHANGE;
- output = malloc(sizeof *output);
+ output = zalloc(sizeof *output);
if (output == NULL)
return NULL;
- memset(output, 0, sizeof *output);
-
output->mode.flags =
WL_OUTPUT_MODE_CURRENT | WL_OUTPUT_MODE_PREFERRED;
@@ -1464,12 +1462,10 @@ x11_compositor_create(struct wl_display *display,
weston_log("initializing x11 backend\n");
- c = malloc(sizeof *c);
+ c = zalloc(sizeof *c);
if (c == NULL)
return NULL;
- memset(c, 0, sizeof *c);
-
if (weston_compositor_init(&c->base, display, argc, argv, config) < 0)
goto err_free;
diff --git a/src/compositor.c b/src/compositor.c
index 19d84af0..3213a7b4 100644
--- a/src/compositor.c
+++ b/src/compositor.c
@@ -1077,9 +1077,7 @@ weston_buffer_from_resource(struct wl_resource *resource)
buffer = container_of(listener, struct weston_buffer,
destroy_listener);
} else {
- buffer = malloc(sizeof *buffer);
- memset(buffer, 0, sizeof *buffer);
-
+ buffer = zalloc(sizeof *buffer);
buffer->resource = resource;
wl_signal_init(&buffer->destroy_signal);
buffer->destroy_listener.notify = weston_buffer_destroy_handler;
diff --git a/src/data-device.c b/src/data-device.c
index a76ae169..46081d4f 100644
--- a/src/data-device.c
+++ b/src/data-device.c
@@ -382,13 +382,12 @@ data_device_start_drag(struct wl_client *client, struct wl_resource *resource,
return;
}
- drag = malloc(sizeof *drag);
+ drag = zalloc(sizeof *drag);
if (drag == NULL) {
wl_resource_post_no_memory(resource);
return;
}
- memset(drag, 0, sizeof *drag);
drag->grab.interface = &drag_grab_interface;
drag->client = client;
diff --git a/src/evdev.c b/src/evdev.c
index 5ad4d6b1..e9fd8091 100644
--- a/src/evdev.c
+++ b/src/evdev.c
@@ -552,10 +552,9 @@ evdev_device_create(struct weston_seat *seat, const char *path, int device_fd)
struct weston_compositor *ec;
char devname[256] = "unknown";
- device = malloc(sizeof *device);
+ device = zalloc(sizeof *device);
if (device == NULL)
return NULL;
- memset(device, 0, sizeof *device);
ec = seat->compositor;
device->output =
diff --git a/src/input.c b/src/input.c
index 7dc6b686..e533a588 100644
--- a/src/input.c
+++ b/src/input.c
@@ -307,11 +307,10 @@ weston_pointer_create(void)
{
struct weston_pointer *pointer;
- pointer = malloc(sizeof *pointer);
+ pointer = zalloc(sizeof *pointer);
if (pointer == NULL)
return NULL;
- memset(pointer, 0, sizeof *pointer);
wl_list_init(&pointer->resource_list);
pointer->focus_listener.notify = lose_pointer_focus;
pointer->default_grab.interface = &default_pointer_grab_interface;
@@ -345,11 +344,10 @@ weston_keyboard_create(void)
{
struct weston_keyboard *keyboard;
- keyboard = malloc(sizeof *keyboard);
+ keyboard = zalloc(sizeof *keyboard);
if (keyboard == NULL)
return NULL;
- memset(keyboard, 0, sizeof *keyboard);
wl_list_init(&keyboard->resource_list);
wl_array_init(&keyboard->keys);
keyboard->focus_listener.notify = lose_keyboard_focus;
@@ -376,11 +374,10 @@ weston_touch_create(void)
{
struct weston_touch *touch;
- touch = malloc(sizeof *touch);
+ touch = zalloc(sizeof *touch);
if (touch == NULL)
return NULL;
- memset(touch, 0, sizeof *touch);
wl_list_init(&touch->resource_list);
touch->focus_listener.notify = lose_touch_focus;
touch->default_grab.interface = &default_touch_grab_interface;
diff --git a/src/screenshooter.c b/src/screenshooter.c
index 2b370714..24140151 100644
--- a/src/screenshooter.c
+++ b/src/screenshooter.c
@@ -465,12 +465,11 @@ weston_recorder_create(struct weston_output *output, const char *filename)
stride = output->current->width;
size = stride * 4 * output->current->height;
- recorder->frame = malloc(size);
+ recorder->frame = zalloc(size);
recorder->rect = malloc(size);
recorder->total = 0;
recorder->count = 0;
recorder->output = output;
- memset(recorder->frame, 0, size);
if (do_yflip)
recorder->tmpbuf = NULL;
diff --git a/src/shell.c b/src/shell.c
index 30b55c38..ebe9b9f8 100644
--- a/src/shell.c
+++ b/src/shell.c
@@ -4443,11 +4443,10 @@ module_init(struct weston_compositor *ec,
unsigned int i;
struct wl_event_loop *loop;
- shell = malloc(sizeof *shell);
+ shell = zalloc(sizeof *shell);
if (shell == NULL)
return -1;
- memset(shell, 0, sizeof *shell);
shell->compositor = ec;
shell->destroy_listener.notify = shell_destroy;
diff --git a/src/tablet-shell.c b/src/tablet-shell.c
index ca63b972..b055ab23 100644
--- a/src/tablet-shell.c
+++ b/src/tablet-shell.c
@@ -527,11 +527,10 @@ module_init(struct weston_compositor *compositor,
struct tablet_shell *shell;
struct wl_event_loop *loop;
- shell = malloc(sizeof *shell);
+ shell = zalloc(sizeof *shell);
if (shell == NULL)
return -1;
- memset(shell, 0, sizeof *shell);
shell->compositor = compositor;
shell->destroy_listener.notify = tablet_shell_destroy;
diff --git a/src/tty.c b/src/tty.c
index 38079a48..07a94051 100644
--- a/src/tty.c
+++ b/src/tty.c
@@ -132,11 +132,10 @@ tty_create(struct weston_compositor *compositor, tty_vt_func_t vt_func,
char filename[16];
struct vt_stat vts;
- tty = malloc(sizeof *tty);
+ tty = zalloc(sizeof *tty);
if (tty == NULL)
return NULL;
- memset(tty, 0, sizeof *tty);
tty->compositor = compositor;
tty->vt_func = vt_func;
diff --git a/src/udev-seat.c b/src/udev-seat.c
index 771d9bcf..4c051c9b 100644
--- a/src/udev-seat.c
+++ b/src/udev-seat.c
@@ -338,11 +338,10 @@ udev_seat_create(struct weston_compositor *c, const char *seat_name)
{
struct udev_seat *seat;
- seat = malloc(sizeof *seat);
+ seat = zalloc(sizeof *seat);
if (!seat)
return NULL;
- memset(seat, 0, sizeof *seat);
weston_seat_init(&seat->base, c, seat_name);
seat->base.led_update = drm_led_update;
diff --git a/src/xwayland/launcher.c b/src/xwayland/launcher.c
index 3228b537..b639479b 100644
--- a/src/xwayland/launcher.c
+++ b/src/xwayland/launcher.c
@@ -325,9 +325,7 @@ module_init(struct weston_compositor *compositor,
struct weston_xserver *wxs;
char lockfile[256], display_name[8];
- wxs = malloc(sizeof *wxs);
- memset(wxs, 0, sizeof *wxs);
-
+ wxs = zalloc(sizeof *wxs);
wxs->process.cleanup = weston_xserver_cleanup;
wxs->wl_display = display;
wxs->compositor = compositor;
diff --git a/src/xwayland/window-manager.c b/src/xwayland/window-manager.c
index 257c1088..d565888d 100644
--- a/src/xwayland/window-manager.c
+++ b/src/xwayland/window-manager.c
@@ -990,7 +990,7 @@ weston_wm_window_create(struct weston_wm *wm,
xcb_get_geometry_cookie_t geometry_cookie;
xcb_get_geometry_reply_t *geometry_reply;
- window = malloc(sizeof *window);
+ window = zalloc(sizeof *window);
if (window == NULL) {
wm_log("failed to allocate window\n");
return;
@@ -1001,7 +1001,6 @@ weston_wm_window_create(struct weston_wm *wm,
values[0] = XCB_EVENT_MASK_PROPERTY_CHANGE;
xcb_change_window_attributes(wm->conn, id, XCB_CW_EVENT_MASK, values);
- memset(window, 0, sizeof *window);
window->wm = wm;
window->id = id;
window->properties_dirty = 1;
@@ -1701,11 +1700,10 @@ weston_wm_create(struct weston_xserver *wxs)
int sv[2];
xcb_atom_t supported[3];
- wm = malloc(sizeof *wm);
+ wm = zalloc(sizeof *wm);
if (wm == NULL)
return NULL;
- memset(wm, 0, sizeof *wm);
wm->server = wxs;
wm->window_hash = hash_table_create();
if (wm->window_hash == NULL) {
diff --git a/tests/weston-test.c b/tests/weston-test.c
index b625f423..bc5b6e9d 100644
--- a/tests/weston-test.c
+++ b/tests/weston-test.c
@@ -232,11 +232,10 @@ module_init(struct weston_compositor *ec,
struct weston_test *test;
struct wl_event_loop *loop;
- test = malloc(sizeof *test);
+ test = zalloc(sizeof *test);
if (test == NULL)
return -1;
- memset(test, 0, sizeof *test);
test->compositor = ec;
weston_layer_init(&test->layer, &ec->cursor_layer.link);