openbsd-ports/databases/gnats/patches/patch-gnats_regex_c
2022-03-11 18:31:17 +00:00

48 lines
1.5 KiB
Plaintext

--- gnats/regex.c.orig Thu Nov 5 20:54:10 1998
+++ gnats/regex.c Fri Dec 28 18:00:24 2007
@@ -1623,11 +1623,12 @@ regex_compile (pattern, size, syntax, bufp)
case ')':
if (syntax & RE_NO_BK_PARENS) goto normal_backslash;
- if (COMPILE_STACK_EMPTY)
+ if (COMPILE_STACK_EMPTY) {
if (syntax & RE_UNMATCHED_RIGHT_PAREN_ORD)
goto normal_backslash;
else
return REG_ERPAREN;
+ }
handle_close:
if (fixup_alt_jump)
@@ -1643,11 +1644,12 @@ regex_compile (pattern, size, syntax, bufp)
}
/* See similar code for backslashed left paren above. */
- if (COMPILE_STACK_EMPTY)
+ if (COMPILE_STACK_EMPTY) {
if (syntax & RE_UNMATCHED_RIGHT_PAREN_ORD)
goto normal_char;
else
return REG_ERPAREN;
+ }
/* Since we just checked for an empty stack above, this
``can't happen''. */
@@ -4903,15 +4905,7 @@ regerror (errcode, preg, errbuf, errbuf_size)
msg_size = strlen (msg) + 1; /* Includes the null. */
if (errbuf_size != 0)
- {
- if (msg_size > errbuf_size)
- {
- strncpy (errbuf, msg, errbuf_size - 1);
- errbuf[errbuf_size - 1] = 0;
- }
- else
- strcpy (errbuf, msg);
- }
+ strlcpy (errbuf, msg, errbuf_size);
return msg_size;
}