From d3974573e791db91180abacae649c2d6b40e3f5c Mon Sep 17 00:00:00 2001 From: akr Date: Sat, 13 Sep 2008 17:05:49 +0000 Subject: * include/ruby/oniguruma.h (onigenc_get_right_adjust_char_head_with_prev): add end argument. * regenc.c (onigenc_get_right_adjust_char_head_with_prev): use end argument. * regexec.c (forward_search_range): follow the interface change. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@19331 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- ChangeLog | 10 ++++++++++ include/ruby/oniguruma.h | 2 +- regenc.c | 4 ++-- regexec.c | 2 +- 4 files changed, 14 insertions(+), 4 deletions(-) diff --git a/ChangeLog b/ChangeLog index 25586333e1..b52c79dd62 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,13 @@ +Sun Sep 14 02:04:28 2008 Tanaka Akira + + * include/ruby/oniguruma.h + (onigenc_get_right_adjust_char_head_with_prev): add end argument. + + * regenc.c (onigenc_get_right_adjust_char_head_with_prev): use end + argument. + + * regexec.c (forward_search_range): follow the interface change. + Sun Sep 14 01:38:26 2008 Tanaka Akira * include/ruby/oniguruma.h (onigenc_get_right_adjust_char_head): add diff --git a/include/ruby/oniguruma.h b/include/ruby/oniguruma.h index cd4bedfe00..911ea45dcc 100644 --- a/include/ruby/oniguruma.h +++ b/include/ruby/oniguruma.h @@ -303,7 +303,7 @@ OnigEncoding onigenc_get_default_encoding P_((void)); ONIG_EXTERN void onigenc_set_default_caseconv_table P_((const OnigUChar* table)); ONIG_EXTERN -OnigUChar* onigenc_get_right_adjust_char_head_with_prev P_((OnigEncoding enc, const OnigUChar* start, const OnigUChar* s, const OnigUChar** prev)); +OnigUChar* onigenc_get_right_adjust_char_head_with_prev P_((OnigEncoding enc, const OnigUChar* start, const OnigUChar* s, const OnigUChar* end, const OnigUChar** prev)); ONIG_EXTERN OnigUChar* onigenc_get_prev_char_head P_((OnigEncoding enc, const OnigUChar* start, const OnigUChar* s)); ONIG_EXTERN diff --git a/regenc.c b/regenc.c index 62bf661525..57f0e43001 100644 --- a/regenc.c +++ b/regenc.c @@ -73,13 +73,13 @@ onigenc_get_right_adjust_char_head(OnigEncoding enc, const UChar* start, const U extern UChar* onigenc_get_right_adjust_char_head_with_prev(OnigEncoding enc, - const UChar* start, const UChar* s, const UChar** prev) + const UChar* start, const UChar* s, const UChar* end, const UChar** prev) { UChar* p = ONIGENC_LEFT_ADJUST_CHAR_HEAD(enc, start, s); if (p < s) { if (prev) *prev = (const UChar* )p; - p += enclen(enc, p, s); + p += enclen(enc, p, end); } else { if (prev) *prev = (const UChar* )NULL; /* Sorry */ diff --git a/regexec.c b/regexec.c index 05bc633898..bb55375cdc 100644 --- a/regexec.c +++ b/regexec.c @@ -3230,7 +3230,7 @@ forward_search_range(regex_t* reg, const UChar* str, const UChar* end, UChar* s, *low = p - reg->dmax; if (*low > s) { *low = onigenc_get_right_adjust_char_head_with_prev(reg->enc, s, - *low, (const UChar** )low_prev); + *low, end, (const UChar** )low_prev); if (low_prev && IS_NULL(*low_prev)) *low_prev = onigenc_get_prev_char_head(reg->enc, (pprev ? pprev : s), *low); -- cgit v1.2.3