njs_value_t r, z, this, s_lvalue, setval, constructor;
njs_object_t *object;
const u_char *start, *end;
- njs_string_prop_t s;
+ njs_string_prop_t s, sv;
njs_value_t arguments[2];
static const njs_value_t string_lindex = njs_string("lastIndex");
ncaptures = njs_max(ncaptures - 1, 0);
for (i = 1; i <= ncaptures; i++) {
- value = njs_array_push(vm, array);
- if (njs_slow_path(value == NULL)) {
+ ret = njs_value_property_i64(vm, &z, i, retval);
+ if (njs_slow_path(ret == NJS_ERROR)) {
return NJS_ERROR;
}
- ret = njs_value_property_i64(vm, &z, i, value);
- if (njs_slow_path(ret == NJS_ERROR)) {
- return NJS_ERROR;
+ (void) njs_string_prop(&sv, retval);
+
+ ret = njs_array_string_add(vm, array, sv.start, sv.size,
+ sv.length);
+ if (njs_slow_path(ret != NJS_OK)) {
+ return ret;
}
if (array->length == limit) {
{ njs_str("'мояВерблюжьяСтрока'.split(/(?=[А-Я])/)"),
njs_str("моя,Верблюжья,Строка") },
+ { njs_str("`aaaaaaaaaaaaaaaaa`.split(/(.*)/)"),
+ njs_str(",aaaaaaaaaaaaaaaaa,") },
+
{ njs_str("'Harry Trump ;Fred Barney; Helen Rigby ; Bill Abel ;Chris Hand '.split( /\\s*(?:;|$)\\s*/)"),
njs_str("Harry Trump,Fred Barney,Helen Rigby,Bill Abel,Chris Hand,") },