diff options
author | Frediano Ziglio <fziglio@redhat.com> | 2015-08-23 17:27:33 +0100 |
---|---|---|
committer | Frediano Ziglio <fziglio@redhat.com> | 2015-08-27 23:50:29 +0100 |
commit | 055345d597b17c83f8f99378362bda98cfacabcc (patch) | |
tree | 2393f318da694cae22ae3f16fb9b11028bb8a089 /server | |
parent | 2d906f222864f8c3506b63f128c4855fb00f63da (diff) | |
download | spice-055345d597b17c83f8f99378362bda98cfacabcc.tar.gz spice-055345d597b17c83f8f99378362bda98cfacabcc.tar.xz spice-055345d597b17c83f8f99378362bda98cfacabcc.zip |
Simplify set_surface_release_info
Signed-off-by: Frediano Ziglio <fziglio@redhat.com>
Acked-by: Christophe Fergeau <cfergeau@redhat.com>
Diffstat (limited to 'server')
-rw-r--r-- | server/red_worker.c | 19 |
1 files changed, 5 insertions, 14 deletions
diff --git a/server/red_worker.c b/server/red_worker.c index eeffdd0a..6f14b70f 100644 --- a/server/red_worker.c +++ b/server/red_worker.c @@ -1772,20 +1772,11 @@ static inline void red_destroy_surface(RedWorker *worker, uint32_t surface_id) } } -static inline void set_surface_release_info(RedWorker *worker, uint32_t surface_id, int is_create, +static inline void set_surface_release_info(QXLReleaseInfoExt *release_info_ext, QXLReleaseInfo *release_info, uint32_t group_id) { - RedSurface *surface; - - surface = &worker->surfaces[surface_id]; - - if (is_create) { - surface->create.info = release_info; - surface->create.group_id = group_id; - } else { - surface->destroy.info = release_info; - surface->destroy.group_id = group_id; - } + release_info_ext->info = release_info; + release_info_ext->group_id = group_id; } static RedDrawable *ref_red_drawable(RedDrawable *drawable) @@ -4296,12 +4287,12 @@ static inline void red_process_surface(RedWorker *worker, RedSurfaceCmd *surface reloaded_surface, // reloaded surfaces will be sent on demand !reloaded_surface); - set_surface_release_info(worker, surface_id, 1, surface->release_info, group_id); + set_surface_release_info(&red_surface->create, surface->release_info, group_id); break; } case QXL_SURFACE_CMD_DESTROY: spice_warn_if(!red_surface->context.canvas); - set_surface_release_info(worker, surface_id, 0, surface->release_info, group_id); + set_surface_release_info(&red_surface->destroy, surface->release_info, group_id); red_handle_depends_on_target_surface(worker, surface_id); /* note that red_handle_depends_on_target_surface must be called before red_current_clear. otherwise "current" will hold items that other drawables may depend on, and then |