[Spice-commits] server/red_worker.c

Uri Lublin uril at kemper.freedesktop.org
Tue Jan 1 02:45:44 PST 2013


 server/red_worker.c |    3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

New commits:
commit 1ff42341629948c591621f0a8ddf2859543ca05d
Author: Uri Lublin <uril at redhat.com>
Date:   Mon Dec 17 18:34:43 2012 +0200

    server: guest_set_client_capabilities: protect against NULL worker->display_channel
    
    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"

diff --git a/server/red_worker.c b/server/red_worker.c
index e5e3d05..1a9c375 100644
--- a/server/red_worker.c
+++ b/server/red_worker.c
@@ -10342,7 +10342,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-commits mailing list