From: Igor Sysoev Date: Fri, 8 Jul 2016 15:07:57 +0000 (+0300) Subject: Now ASCII strings use UTF8 variant of PCRE code. X-Git-Tag: 0.1.0~15 X-Git-Url: http://www.kaiwu.me/postgresql/commit/?a=commitdiff_plain;h=94cce0ef24d49fa1c70d4d795ef4f328967a70a0;p=njs.git Now ASCII strings use UTF8 variant of PCRE code. --- diff --git a/njs/njs_regexp.c b/njs/njs_regexp.c index a0a93969..61452437 100644 --- a/njs/njs_regexp.c +++ b/njs/njs_regexp.c @@ -476,7 +476,7 @@ njs_regexp_prototype_test(njs_vm_t *vm, njs_value_t *args, nxt_uint_t nargs, (void) njs_string_prop(&string, value); - n = (string.length != 0 && string.length != string.size); + n = (string.length != 0); pattern = args[0].data.u.regexp->pattern; @@ -527,14 +527,17 @@ njs_regexp_prototype_exec(njs_vm_t *vm, njs_value_t *args, nxt_uint_t nargs, (void) njs_string_prop(&string, value); + /* Byte string. */ utf8 = 0; n = 0; if (string.length != 0) { + /* ASCII string. */ utf8 = 1; n = 1; if (string.length != string.size) { + /* UTF-8 string. */ utf8 = 2; } } diff --git a/njs/njs_string.c b/njs/njs_string.c index 195f1547..b071a95d 100644 --- a/njs/njs_string.c +++ b/njs/njs_string.c @@ -1450,7 +1450,7 @@ njs_string_prototype_search(njs_vm_t *vm, njs_value_t *args, nxt_uint_t nargs, (void) njs_string_prop(&string, &args[0]); - n = (string.length != 0 && string.length != string.size); + n = (string.length != 0); if (nxt_regex_is_valid(&pattern->regex[n])) { ret = nxt_regex_match(&pattern->regex[n], string.start, string.size, @@ -1696,11 +1696,11 @@ njs_string_prototype_split(njs_vm_t *vm, njs_value_t *args, nxt_uint_t nargs, if (string.length != 0) { /* ASCII string. */ utf8 = 1; - n = 1; if (string.length != string.size) { /* UTF-8 string. */ utf8 = 2; + n = 1; } }