diff options
Diffstat (limited to '0101-onig_new_deluxe-don-t-free-new-pattern-if-success.patch')
-rw-r--r-- | 0101-onig_new_deluxe-don-t-free-new-pattern-if-success.patch | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/0101-onig_new_deluxe-don-t-free-new-pattern-if-success.patch b/0101-onig_new_deluxe-don-t-free-new-pattern-if-success.patch new file mode 100644 index 0000000..6567d25 --- /dev/null +++ b/0101-onig_new_deluxe-don-t-free-new-pattern-if-success.patch @@ -0,0 +1,27 @@ +From 4a8db9d50f8281930678ed6f06692545293f3c9d Mon Sep 17 00:00:00 2001 +From: Mamoru TASAKA <mtasaka@fedoraproject.org> +Date: Fri, 12 Jul 2019 15:38:43 +0900 +Subject: [PATCH] onig_new_deluxe: don't free new pattern if success + +On onig_new_deluxe() success (r == 0), new pattern (cpat) is used in +einfo->pattern, so don't free this. +--- + src/regext.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/src/regext.c b/src/regext.c +index fa4b360..920d183 100644 +--- a/src/regext.c ++++ b/src/regext.c +@@ -196,7 +196,7 @@ onig_new_deluxe(regex_t** reg, const UChar* pattern, const UChar* pattern_end, + } + + err2: +- if (cpat != pattern) xfree(cpat); ++ if (r && (cpat != pattern)) xfree(cpat); + + return r; + } +-- +2.21.0 + |