From 81e14d76d1ef99c8e69f3cd7e30e9bf186df1a35 Mon Sep 17 00:00:00 2001 From: Gerd Hoffmann Date: Thu, 26 Aug 2010 23:59:29 +0200 Subject: fix red_cursur_flush segfault --- server/red_worker.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) (limited to 'server/red_worker.c') diff --git a/server/red_worker.c b/server/red_worker.c index 1975597e..ec9f6bbc 100644 --- a/server/red_worker.c +++ b/server/red_worker.c @@ -9574,7 +9574,7 @@ static LocalCursor *_new_local_cursor(SpiceCursorHeader *header, int data_size, { LocalCursor *local; - local = (LocalCursor *)spice_malloc(sizeof(LocalCursor) + data_size); + local = (LocalCursor *)spice_malloc0(sizeof(LocalCursor) + data_size); red_pipe_item_init(&local->base.pipe_data, PIPE_ITEM_TYPE_LOCAL_CURSOR); local->base.refs = 1; @@ -9584,6 +9584,8 @@ static LocalCursor *_new_local_cursor(SpiceCursorHeader *header, int data_size, local->red_cursor.header.unique = 0; local->red_cursor.flags = 0; + local->red_cursor.data = (uint8_t*)(local+1); + local->position = position; local->data_size = data_size; return local; -- cgit