From: Dmitry Volyntsev Date: Fri, 14 Sep 2018 11:19:03 +0000 (+0300) Subject: Fixed njs_string_slice(). X-Git-Tag: 0.2.4~2 X-Git-Url: http://www.kaiwu.me/postgresql/commit/?a=commitdiff_plain;h=61bf1a4aaf70fcb79793ce96a5c1a009f80ec3c1;p=njs.git Fixed njs_string_slice(). dst retval argument was ignored. --- diff --git a/njs/njs_string.c b/njs/njs_string.c index 1e8c21d2..acb4d2fc 100644 --- a/njs/njs_string.c +++ b/njs/njs_string.c @@ -1288,7 +1288,7 @@ njs_string_slice_args(njs_slice_prop_t *slice, njs_value_t *args, nxt_noinline njs_ret_t njs_string_slice(njs_vm_t *vm, njs_value_t *dst, - const njs_string_prop_t *string, njs_slice_prop_t *slice) + const njs_string_prop_t *string, const njs_slice_prop_t *slice) { size_t size, n, length; const u_char *p, *start, *end; @@ -1325,10 +1325,10 @@ njs_string_slice(njs_vm_t *vm, njs_value_t *dst, } if (nxt_fast_path(size != 0)) { - return njs_string_new(vm, &vm->retval, start, size, length); + return njs_string_new(vm, dst, start, size, length); } - vm->retval = njs_string_empty; + *dst = njs_string_empty; return NXT_OK; } diff --git a/njs/njs_string.h b/njs/njs_string.h index 0dd36dff..e2042d04 100644 --- a/njs/njs_string.h +++ b/njs/njs_string.h @@ -146,7 +146,7 @@ njs_ret_t njs_string_constructor(njs_vm_t *vm, njs_value_t *args, nxt_bool_t njs_string_eq(const njs_value_t *val1, const njs_value_t *val2); nxt_int_t njs_string_cmp(const njs_value_t *val1, const njs_value_t *val2); njs_ret_t njs_string_slice(njs_vm_t *vm, njs_value_t *dst, - const njs_string_prop_t *string, njs_slice_prop_t *slice); + const njs_string_prop_t *string, const njs_slice_prop_t *slice); const u_char *njs_string_offset(const u_char *start, const u_char *end, size_t index); nxt_noinline uint32_t njs_string_index(njs_string_prop_t *string,