On Wed, 6 Feb 2019 19:12:31 +0100
Tim Düsterhus <[email protected]> wrote:
> Line 4398 is missing here, it appends a marker (empty string) to mark
> the end of the array.
>
> > ...
> >
> > 4450 /* look for the Host header and place it in :authority
> > */
> > 4451 auth = ist2(NULL, 0);
> > 4452 for (hdr = 0; hdr < sizeof(list)/sizeof(list[0]);
> > hdr++) {
> > 4453 if (isteq(list[hdr].n, ist("")))
> > // (here, assume the condition is false, so control keeps in this block...)
> >
>
> We established that `list` is an array without holes terminated by an
> empty string.
>
> Thus either:
> 1. The Condition is false, then the value must be initialized
> or
> 2. The Condition is true, then the loop is exited.
>
> Thus I believe this is a false-positive.
Thank you for checking this out and, by extension, Willy on his set of
replise. I missed the marker (and apparently, so did Clang).
Cheers,
--
Ricardo Nabinger Sanchez http://www.taghos.com.br/