https://bugs.exim.org/show_bug.cgi?id=2308

--- Comment #4 from Philip Hazel <[email protected]> ---
I think this code is actually OK. The pcre2_compile() function generates a
class bitmap only for classes with at least two characters, so at least one
byte will be non-zero, leading to at least one execution of 

  char_list[len++] = (uint16_t) c;

And, as len starts out zero, char_list[0] will always be set. However, you
cannot tell this just from reading the code of the function. If by accident
every byte in the bits[] array were to be zero, char_list[0] would not be set.
Might it be sensible to add a line such as "if (len == 0) return FALSE;" just
to cover this? It would also, hopefully, stop static analyzers complaining.

-- 
You are receiving this mail because:
You are on the CC list for the bug.
-- 
## List details at https://lists.exim.org/mailman/listinfo/pcre-dev 

Reply via email to