[libvirt] [PATCH 7/7] qemudDomainAttachSCSIDisk: avoid FP NULL-ptr-deref from clang
Jim Meyering
jim at meyering.net
Wed Apr 14 17:33:20 UTC 2010
Eric Blake wrote:
> On 04/14/2010 10:02 AM, Jim Meyering wrote:
>> From: Jim Meyering <meyering at redhat.com>
>>
>> * src/util/conf.c (virConfParseValue): Add an sa_assert.
>> ---
>> src/util/conf.c | 9 ++++++++-
>> 1 files changed, 8 insertions(+), 1 deletions(-)
>
> A little more context makes this obvious:
Good point. Applies to a couple others, too.
I'll try to make things easier to review next time.
Thanks for the prompt reviews.
> if ((ctxt->cur < ctxt->end) && (CUR != ']')) {
> if ((lst = virConfParseValue(ctxt)) == NULL)
> return(NULL);
>> SKIP_BLANKS_AND_EOL;
>> }
>> while ((ctxt->cur < ctxt->end) && (CUR != ']')) {
>> +
>> + /* Tell Clang that when execution reaches this point
>> + "lst" is guaranteed to be non-NULL. This stops it
>> + from issuing an invalid NULL-dereference warning about
>> + "prev = lst; while (prev->next..." below. */
>> + sa_assert (lst);
>> +
>
> Either we never enter the while loop, or the previous if must have been
> true and lst was assigned. So ACK, if 1/7 is approved.
More information about the libvir-list
mailing list