From d0e740eeaa2ff293edad2bf7df959540208f5572 Mon Sep 17 00:00:00 2001 From: Alon Levy Date: Wed, 22 Jun 2011 13:43:13 +0200 Subject: [PATCH] server/red_worker: no panic on double destroy primary --- server/red_worker.c | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/server/red_worker.c b/server/red_worker.c index ddd34c65..30b96583 100644 --- a/server/red_worker.c +++ b/server/red_worker.c @@ -10304,7 +10304,11 @@ static inline void handle_dev_destroy_primary_surface(RedWorker *worker) receive_data(worker->channel, &surface_id, sizeof(uint32_t)); PANIC_ON(surface_id != 0); - PANIC_ON(!worker->surfaces[surface_id].context.canvas); + + if (!worker->surfaces[surface_id].context.canvas) { + red_printf("double destroy of primary surface\n"); + return; + } flush_all_qxl_commands(worker); destroy_surface_wait(worker, 0);