diff options
author | Alon Levy <alevy@redhat.com> | 2011-06-22 13:43:13 +0200 |
---|---|---|
committer | Alon Levy <alevy@redhat.com> | 2011-08-23 18:06:03 +0300 |
commit | d0e740eeaa2ff293edad2bf7df959540208f5572 (patch) | |
tree | 2baec84865865b4c5c2e9a29033993611acc586e /server | |
parent | c820b252c1a7a9ac6574ed5c461c90a7bc569ba9 (diff) | |
download | spice-d0e740eeaa2ff293edad2bf7df959540208f5572.tar.gz spice-d0e740eeaa2ff293edad2bf7df959540208f5572.tar.xz spice-d0e740eeaa2ff293edad2bf7df959540208f5572.zip |
server/red_worker: no panic on double destroy primary
Diffstat (limited to 'server')
-rw-r--r-- | server/red_worker.c | 6 |
1 files changed, 5 insertions, 1 deletions
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); |