diff options
-rw-r--r-- | ChangeLog | 5 | ||||
-rw-r--r-- | pcre_dfa_exec.c | 4 |
2 files changed, 8 insertions, 1 deletions
@@ -16,6 +16,11 @@ processing files with the -r option, and also (some very odd code) truncating path names to 512 characters. There is now a check on the absolute length of full path file names, which may be up to 2047 characters long. +4. Using pcre_dfa_exec(), in UTF mode when UCP support was not defined, there +was the possibility of a false positive match when caselessly matching a "not +this character" item such as [^\x{1234}] (with a code point greater than 127) +because the "other case" variable was not being initialized. + Version 8.41 05-July-2017 ------------------------- diff --git a/pcre_dfa_exec.c b/pcre_dfa_exec.c index bc09ced..f333381 100644 --- a/pcre_dfa_exec.c +++ b/pcre_dfa_exec.c @@ -2287,12 +2287,14 @@ for (;;) case OP_NOTI: if (clen > 0) { - unsigned int otherd; + pcre_uint32 otherd; #ifdef SUPPORT_UTF if (utf && d >= 128) { #ifdef SUPPORT_UCP otherd = UCD_OTHERCASE(d); +#else + otherd = d; #endif /* SUPPORT_UCP */ } else |