Skip to content

Commit

Permalink
Suppress some minor analysis warnings (#593)
Browse files Browse the repository at this point in the history
One of these appears in Coverity's dashboard; the rest are from clang-scan.

See #576
  • Loading branch information
NWilson authored Dec 7, 2024
1 parent 0f22e67 commit c03e7b0
Show file tree
Hide file tree
Showing 5 changed files with 15 additions and 6 deletions.
4 changes: 2 additions & 2 deletions src/pcre2_compile.c
Original file line number Diff line number Diff line change
Expand Up @@ -7113,7 +7113,6 @@ for (;; pptr++)
single-char opcodes. */

reqvary = (repeat_min == repeat_max)? 0 : REQ_VARY;
op_type = 0;

/* Adjust first and required code units for a zero repeat. */

Expand Down Expand Up @@ -7676,7 +7675,8 @@ for (;; pptr++)
}
else
{
/* Come here from just above with a character in mcbuffer/mclength. */
/* Come here from just above with a character in mcbuffer/mclength.
You must also set op_type before the jump. */
OUTPUT_SINGLE_REPEAT:
prop_type = prop_value = -1;
}
Expand Down
3 changes: 3 additions & 0 deletions src/pcre2_compile_class.c
Original file line number Diff line number Diff line change
Expand Up @@ -256,6 +256,7 @@ while (c <= end)
buffer[0] = new_start;
buffer[1] = new_end;
buffer += 2;
(void)buffer;
}
return result;
}
Expand Down Expand Up @@ -341,6 +342,7 @@ while (*p != NOTACHAR)
buffer[0] = start;
buffer[1] = get_highest_char(options);
buffer += 2;
(void)buffer;
}

return result;
Expand Down Expand Up @@ -756,6 +758,7 @@ for (c = 0; c < 256; c++)
{
prop = GET_UCD(c);
set_bit = FALSE;
(void)set_bit;

switch (ptype)
{
Expand Down
2 changes: 1 addition & 1 deletion src/pcre2_dfa_match.c
Original file line number Diff line number Diff line change
Expand Up @@ -3070,7 +3070,7 @@ for (;;)
if (codevalue == OP_BRAPOSZERO)
{
allow_zero = TRUE;
codevalue = *(++code); /* Codevalue will be one of above BRAs */
++code; /* The following opcode will be one of the above BRAs */
}
else allow_zero = FALSE;

Expand Down
7 changes: 5 additions & 2 deletions src/pcre2grep.c
Original file line number Diff line number Diff line change
Expand Up @@ -3067,7 +3067,6 @@ while (ptr < endptr)
if (group_separator != NULL)
fprintf(stdout, "%s%s", group_separator, STDOUT_NL);
hyphenpending = FALSE;
hyphenprinted = TRUE;
}

/* Now print the matching line(s); ensure we set hyphenpending at the end
Expand Down Expand Up @@ -3882,8 +3881,12 @@ else
filename = name;
}

while ((patlen = sizeof(buffer)) && read_pattern(buffer, &patlen, f))
while (TRUE)
{
patlen = sizeof(buffer);
if (!read_pattern(buffer, &patlen, f))
break;

if (!posix_pattern_file)
{
while (patlen > 0 && isspace((unsigned char)(buffer[patlen-1]))) patlen--;
Expand Down
5 changes: 4 additions & 1 deletion src/pcre2posix.c
Original file line number Diff line number Diff line change
Expand Up @@ -94,6 +94,7 @@ changed. This #define is a copy of the one in pcre2_internal.h. */

#include "pcre2.h"
#include "pcre2posix.h"
#include "pcre2_util.h"

/* Table to translate PCRE2 compile time error codes into POSIX error codes.
Only a few PCRE2 errors with a value greater than 23 turn into special POSIX
Expand Down Expand Up @@ -194,7 +195,7 @@ if (preg != NULL && (int)preg->re_erroffset != -1)
/* no need to deal with UB in snprintf */
if (errbuf_size > INT_MAX) errbuf_size = INT_MAX;

/* there are 11 charactes between message and offset,
/* there are 11 characters between message and offset;
update message_len() if changed */
ret = snprintf(errbuf, errbuf_size, "%s at offset %d", message,
(int)preg->re_erroffset);
Expand All @@ -210,6 +211,8 @@ else
ret = (int)len;
}

PCRE2_ASSERT(len > 0 || preg != NULL);

do {
if (ret < 0)
{
Expand Down

0 comments on commit c03e7b0

Please sign in to comment.