[Spice-devel] [PATCH] server: guest_set_client_capabilities: protect against NULL worker->display_channel

Hans de Goede hdegoede at redhat.com
Wed Dec 19 02:52:13 PST 2012


ACK.

On 12/18/2012 04:57 PM, Uri Lublin wrote:
> Reported-by: Michal Luscon <mluscon at redhat.com>
>
> Found by a Coverity scan:
>    in handle_dev_start -
>      Checking "worker->display_channel" implies that "worker->display_channel"
> 	         might be NULL.
>      Passing "worker" to function "guest_set_client_capabilities"
>    in guest_set_client_capabilities -
>      Directly dereferencing parameter "worker->display_channel"
> ---
>   server/red_worker.c |    3 ++-
>   1 files changed, 2 insertions(+), 1 deletions(-)
>
> diff --git a/server/red_worker.c b/server/red_worker.c
> index 530562b..1f01e3b 100644
> --- a/server/red_worker.c
> +++ b/server/red_worker.c
> @@ -10344,7 +10344,8 @@ static void guest_set_client_capabilities(RedWorker *worker)
>           worker->set_client_capabilities_pending = 1;
>           return;
>       }
> -    if (worker->display_channel->common.base.clients_num == 0) {
> +    if ((worker->display_channel == NULL) ||
> +        (worker->display_channel->common.base.clients_num == 0)) {
>           worker->qxl->st->qif->set_client_capabilities(worker->qxl, FALSE, caps);
>       } else {
>           // Take least common denominator
>


More information about the Spice-devel mailing list