s = ONIGENC_LEFT_ADJUST_CHAR_HEAD(enc, adjust_text, s);
while (s >= text) {
- if(IS_NULL(s))break;
if (*s == *target) {
p = s + 1;
t = target + 1;
const UChar *s = text_start;
while (s >= text) {
- if(IS_NULL(s))break;
if (map[*s]) return (UChar* )s;
s = onigenc_get_prev_char_head(enc, adjust_text, s);
{
UChar *p;
+ if (range == 0) goto fail;
+
range += reg->dmin;
p = s;
}
}
else { /* backward search */
+ if (range < str) goto mismatch;
+
if (orig_start < end)
orig_start += enclen(reg->enc, orig_start); /* is upper range */
MATCH_AND_RETURN_CHECK(orig_start);
s = prev;
}
- if(IS_NULL(s))break;
} while (s >= range);
goto mismatch;
}
}
for (i = arg_num - opt_arg_num, j = 0; i < arg_num; i++, j++) {
if (fe->arg_types[i] == ONIG_TYPE_STRING) {
- if(IS_NULL(opt_defaults))return ONIGERR_INVALID_ARGUMENT;
+ if (IS_NULL(opt_defaults)) return ONIGERR_INVALID_ARGUMENT;
OnigValue* val = opt_defaults + j;
UChar* ds = onigenc_strdup(enc, val->s.start, val->s.end);
CHECK_NULL_RETURN_MEMERR(ds);