summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--libc/misc/regex/regex_old.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/libc/misc/regex/regex_old.c b/libc/misc/regex/regex_old.c
index 3550698d3..cbfb7ae7c 100644
--- a/libc/misc/regex/regex_old.c
+++ b/libc/misc/regex/regex_old.c
@@ -8085,7 +8085,8 @@ regexec (
int len = strlen (string);
boolean want_reg_info = !preg->no_sub && nmatch > 0;
- private_preg = *preg;
+ /* use hidden memcpy() ourselves rather than gcc calling public memcpy() */
+ memcpy(&private_preg, preg, sizeof(*preg));
private_preg.not_bol = !!(eflags & REG_NOTBOL);
private_preg.not_eol = !!(eflags & REG_NOTEOL);