[Spice-devel] [PATCH] worker: improve validation for update command

Fabiano FidĂȘncio fidencio at redhat.com
Fri Dec 4 05:31:49 PST 2015


On Fri, Dec 4, 2015 at 12:42 PM, Frediano Ziglio <fziglio at redhat.com> wrote:
> If surface_id is not valid we should still release resource allocated
> by red_get_update_cmd and from the guest.
> This to reduce leaks in case of a race or another error in the guest
> driver.
> Also not issue a warning on invalid surface number to avoid filling
> log space unconditionally.
>
> Signed-off-by: Frediano Ziglio <fziglio at redhat.com>
> ---
>  server/red-worker.c | 6 +++---
>  1 file changed, 3 insertions(+), 3 deletions(-)
>
> diff --git a/server/red-worker.c b/server/red-worker.c
> index 626b481..6ec9106 100644
> --- a/server/red-worker.c
> +++ b/server/red-worker.c
> @@ -284,10 +284,10 @@ static int red_process_display(RedWorker *worker, uint32_t max_pipe_size, int *r
>              }
>              if (!validate_surface(worker->display_channel, update.surface_id)) {
>                  spice_warning("Invalid surface in QXL_CMD_UPDATE");
> -                break;
> +            } else {
> +                display_channel_draw(worker->display_channel, &update.area, update.surface_id);
> +                worker->qxl->st->qif->notify_update(worker->qxl, update.update_id);
>              }
> -            display_channel_draw(worker->display_channel, &update.area, update.surface_id);
> -            worker->qxl->st->qif->notify_update(worker->qxl, update.update_id);
>              release_info_ext.group_id = ext_cmd.group_id;
>              release_info_ext.info = update.release_info;
>              worker->qxl->st->qif->release_resource(worker->qxl, release_info_ext);
> --
> 2.4.3
>
> _______________________________________________
> Spice-devel mailing list
> Spice-devel at lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/spice-devel

Acked-by: Fabiano FidĂȘncio <fidencio at redhat.com>


More information about the Spice-devel mailing list