[libvirt] [PATCH] add an assert, to avoid a false-positive NULL-deref warning from clang

Paolo Bonzini pbonzini at redhat.com
Mon Mar 1 17:36:47 UTC 2010


> On the other hand, perhaps a more invasive rewrite would also work while
> also avoiding assert(), by hoisting the worker->quitRequest into the while
> loop, something like:
>
>       while ((client = qemudPendingJob(server)) == NULL) {
>           if (worker->quitRequest
>               || virCondWait(&server->job,&server->lock)<  0) {
>               virMutexUnlock(&server->lock);
>               return NULL;
>           }
>       }
>       if (worker->quitRequest) {
>           virMutexUnlock(&client->lock);
>           virMutexUnlock(&server->lock);
>           return NULL;
>       }
>
> Should I write that into patch format?

I think it's best to report the bug to clang's bugzilla and not clutter 
libvirt too much.

Paolo




More information about the libvir-list mailing list