From 871dbe541782fac31cd097ed5dbceface47ade67 Mon Sep 17 00:00:00 2001 From: Frediano Ziglio Date: Mon, 25 Jan 2016 08:21:44 +0000 Subject: [PATCH] worker: do not leak cursor after disconnecting clients Calling cursor_channel_disconnect does not free cursor_display so this causes a leak. Is the only code where this pointer is reset preventing any further cursor channel connection. If a client is lazy reading cursor data during the flush connection is closed and further clients won't be able to use the cursor. This also prevents future use of a NULL pointer. Signed-off-by: Frediano Ziglio Acked-by: Jonathon Jongsma --- server/red-worker.c | 1 - 1 file changed, 1 deletion(-) diff --git a/server/red-worker.c b/server/red-worker.c index 61966827..fd436a30 100644 --- a/server/red-worker.c +++ b/server/red-worker.c @@ -454,7 +454,6 @@ static void flush_cursor_commands(RedWorker *worker) if (spice_get_monotonic_time_ns() >= end_time) { spice_warning("flush cursor timeout"); cursor_channel_disconnect(worker->cursor_channel); - worker->cursor_channel = NULL; } else { sleep_count++; usleep(DISPLAY_CLIENT_RETRY_INTERVAL);