From 61bf1a4aaf70fcb79793ce96a5c1a009f80ec3c1 Mon Sep 17 00:00:00 2001 From: Dmitry Volyntsev Date: Fri, 14 Sep 2018 14:19:03 +0300 Subject: [PATCH] Fixed njs_string_slice(). dst retval argument was ignored. --- njs/njs_string.c | 6 +++--- njs/njs_string.h | 2 +- 2 files changed, 4 insertions(+), 4 deletions(-) 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, -- 2.47.3