summaryrefslogtreecommitdiff
path: root/regex.c
diff options
context:
space:
mode:
Diffstat (limited to 'regex.c')
-rw-r--r--regex.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/regex.c b/regex.c
index 21aa900960..0ee2b066d3 100644
--- a/regex.c
+++ b/regex.c
@@ -3721,12 +3721,12 @@ re_match(bufp, string_arg, size, pos, regs)
cc = c = (unsigned char)translate[c];
not = is_in_list(c, p);
+ if (!not && cc != c) {
+ part = not = is_in_list(cc, p);
+ }
if (*(p - 1) == (unsigned char)charset_not) {
not = !not;
}
- else if (!not && cc != c) {
- part = not = is_in_list(cc, p);
- }
if (!not) goto fail;
p += 1 + *p + 2 + EXTRACT_UNSIGNED(&p[1 + *p])*8;