summaryrefslogtreecommitdiff
path: root/regexec.c
diff options
context:
space:
mode:
Diffstat (limited to 'regexec.c')
-rw-r--r--regexec.c38
1 files changed, 19 insertions, 19 deletions
diff --git a/regexec.c b/regexec.c
index 74e9a093c7..c2352090f5 100644
--- a/regexec.c
+++ b/regexec.c
@@ -4933,7 +4933,7 @@ forward_search_range(regex_t* reg, const UChar* str, const UChar* end, UChar* s,
p = s;
if (reg->dmin != 0) {
- if ((ptrdiff_t)(end - p) <= (ptrdiff_t)reg->dmin) return 0; /* fail */
+ if ((OnigDistance)(end - p) <= reg->dmin) return 0; /* fail */
if (ONIGENC_IS_SINGLEBYTE(reg->enc)) {
p += reg->dmin;
}
@@ -4976,7 +4976,7 @@ forward_search_range(regex_t* reg, const UChar* str, const UChar* end, UChar* s,
}
if (p && p < range) {
- if ((ptrdiff_t)(p - s) < (ptrdiff_t)reg->dmin) {
+ if ((OnigDistance)(p - s) < reg->dmin) {
retry_gate:
pprev = p;
p += enclen(reg->enc, p, end);
@@ -5024,7 +5024,7 @@ forward_search_range(regex_t* reg, const UChar* str, const UChar* end, UChar* s,
}
else {
if (reg->dmax != ONIG_INFINITE_DISTANCE) {
- if ((ptrdiff_t)(p - str) < (ptrdiff_t)reg->dmax) {
+ if ((OnigDistance)(p - str) < reg->dmax) {
*low = (UChar* )str;
if (low_prev)
*low_prev = onigenc_get_prev_char_head(reg->enc, str, *low, end);
@@ -5046,7 +5046,7 @@ forward_search_range(regex_t* reg, const UChar* str, const UChar* end, UChar* s,
}
}
/* no needs to adjust *high, *high is used as range check only */
- if ((ptrdiff_t)(p - str) < (ptrdiff_t)reg->dmin)
+ if ((OnigDistance)(p - str) < reg->dmin)
*high = (UChar* )str;
else
*high = p - reg->dmin;
@@ -5155,13 +5155,13 @@ backward_search_range(regex_t* reg, const UChar* str, const UChar* end,
}
if (reg->dmax != ONIG_INFINITE_DISTANCE) {
- if ((ptrdiff_t)(p - str) < (ptrdiff_t)reg->dmax)
+ if ((OnigDistance)(p - str) < reg->dmax)
*low = (UChar* )str;
else
*low = p - reg->dmax;
if (reg->dmin != 0) {
- if ((ptrdiff_t)(p - str) < (ptrdiff_t)reg->dmin)
+ if ((OnigDistance)(p - str) < reg->dmin)
*high = (UChar* )str;
else
*high = p - reg->dmin;
@@ -5328,17 +5328,17 @@ onig_search_gpos(regex_t* reg, const UChar* str, const UChar* end,
min_semi_end = max_semi_end = (UChar* )end;
end_buf:
- if ((ptrdiff_t)(max_semi_end - str) < (ptrdiff_t)reg->anchor_dmin)
+ if ((OnigDistance)(max_semi_end - str) < reg->anchor_dmin)
goto mismatch_no_msa;
if (range > start) {
- if ((ptrdiff_t)(min_semi_end - start) > (ptrdiff_t)reg->anchor_dmax) {
+ if ((OnigDistance)(min_semi_end - start) > reg->anchor_dmax) {
start = min_semi_end - reg->anchor_dmax;
if (start < end)
start = onigenc_get_right_adjust_char_head(reg->enc, str, start, end);
}
- if ((ptrdiff_t)(max_semi_end - (range - 1)) < (ptrdiff_t)reg->anchor_dmin) {
- if ((ptrdiff_t)(max_semi_end - str + 1) < (ptrdiff_t)reg->anchor_dmin)
+ if ((OnigDistance)(max_semi_end - (range - 1)) < reg->anchor_dmin) {
+ if ((OnigDistance)(max_semi_end - str + 1) < reg->anchor_dmin)
goto mismatch_no_msa;
else
range = max_semi_end - reg->anchor_dmin + 1;
@@ -5349,11 +5349,11 @@ onig_search_gpos(regex_t* reg, const UChar* str, const UChar* end,
Backward search is used. */
}
else {
- if ((ptrdiff_t)(min_semi_end - range) > (ptrdiff_t)reg->anchor_dmax) {
+ if ((OnigDistance)(min_semi_end - range) > reg->anchor_dmax) {
range = min_semi_end - reg->anchor_dmax;
}
- if ((ptrdiff_t)(max_semi_end - start) < (ptrdiff_t)reg->anchor_dmin) {
- if ((ptrdiff_t)(max_semi_end - str) < (ptrdiff_t)reg->anchor_dmin)
+ if ((OnigDistance)(max_semi_end - start) < reg->anchor_dmin) {
+ if ((OnigDistance)(max_semi_end - str) < reg->anchor_dmin)
goto mismatch_no_msa;
else {
start = max_semi_end - reg->anchor_dmin;
@@ -5441,7 +5441,7 @@ onig_search_gpos(regex_t* reg, const UChar* str, const UChar* end,
if (reg->dmax == ONIG_INFINITE_DISTANCE)
sch_range = (UChar* )end;
else {
- if ((ptrdiff_t)(end - range) < (ptrdiff_t)reg->dmax)
+ if ((OnigDistance)(end - range) < reg->dmax)
sch_range = (UChar* )end;
else {
sch_range = (UChar* )range + reg->dmax;
@@ -5513,15 +5513,15 @@ onig_search_gpos(regex_t* reg, const UChar* str, const UChar* end,
else
adjrange = (UChar* )end;
- if ((ptrdiff_t)(end - range) > (ptrdiff_t)reg->dmin)
+ if ((OnigDistance)(end - range) > reg->dmin)
min_range = range + reg->dmin;
else
min_range = end;
if (reg->dmax != ONIG_INFINITE_DISTANCE &&
- (ptrdiff_t)(end - range) >= (ptrdiff_t)reg->threshold_len) {
+ end - range >= reg->threshold_len) {
do {
- if ((ptrdiff_t)(end - s) > (ptrdiff_t)reg->dmax)
+ if ((OnigDistance)(end - s) > reg->dmax)
sch_start = s + reg->dmax;
else
sch_start = (UChar* )end;
@@ -5542,13 +5542,13 @@ onig_search_gpos(regex_t* reg, const UChar* str, const UChar* end,
goto mismatch;
}
else { /* check only. */
- if ((ptrdiff_t)(end - range) < (ptrdiff_t)reg->threshold_len) goto mismatch;
+ if (end - range < reg->threshold_len) goto mismatch;
if (reg->dmax != 0) {
if (reg->dmax == ONIG_INFINITE_DISTANCE)
sch_start = (UChar* )end;
else {
- if ((ptrdiff_t)(end - s) > (ptrdiff_t)reg->dmax) {
+ if ((OnigDistance)(end - s) > reg->dmax) {
sch_start = s + reg->dmax;
sch_start = ONIGENC_LEFT_ADJUST_CHAR_HEAD(reg->enc,
start, sch_start, end);