From: K.Kosako Date: Tue, 10 Apr 2018 00:08:33 +0000 (+0900) Subject: fix #87: Read unknown address in onig_error_code_to_str() X-Git-Tag: v6.8.2^2~16 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=850bd9b0d8186eb1637722b46b12656814ab4ad2;p=onig fix #87: Read unknown address in onig_error_code_to_str() --- diff --git a/src/regparse.c b/src/regparse.c index 6e95a14..f96180f 100644 --- a/src/regparse.c +++ b/src/regparse.c @@ -5341,8 +5341,11 @@ fetch_token(OnigToken* tok, UChar** src, UChar* end, ScanEnv* env) if (num_type != IS_NOT_NUM) { if (num_type == IS_REL_NUM) { gnum = backref_rel_to_abs(gnum, env); - if (gnum < 0) + if (gnum < 0) { + onig_scan_env_set_error_string(env, ONIGERR_UNDEFINED_NAME_REFERENCE, + prev, name_end); return ONIGERR_UNDEFINED_GROUP_REFERENCE; + } } tok->u.call.by_number = 1; tok->u.call.gnum = gnum; @@ -5563,8 +5566,11 @@ fetch_token(OnigToken* tok, UChar** src, UChar* end, ScanEnv* env) else { if (num_type == IS_REL_NUM) { gnum = backref_rel_to_abs(gnum, env); - if (gnum < 0) + if (gnum < 0) { + onig_scan_env_set_error_string(env, + ONIGERR_UNDEFINED_NAME_REFERENCE, name, name_end); return ONIGERR_UNDEFINED_GROUP_REFERENCE; + } } tok->u.call.by_number = 1; tok->u.call.gnum = gnum;