details: https://hg.nginx.org/njs/rev/8498c810d853 branches: changeset: 1528:8498c810d853 user: Dmitry Volyntsev <xei...@nginx.com> date: Thu Sep 24 19:00:38 2020 +0000 description: Fixed dead store assignment after eef4ab1bee70.
Found by Clang static analyzer. diffstat: src/njs_buffer.c | 49 ++++++++++++++----------------------------------- 1 files changed, 14 insertions(+), 35 deletions(-) diffs (108 lines): diff -r eef4ab1bee70 -r 8498c810d853 src/njs_buffer.c --- a/src/njs_buffer.c Tue Sep 22 18:42:21 2020 +0000 +++ b/src/njs_buffer.c Thu Sep 24 19:00:38 2020 +0000 @@ -55,8 +55,6 @@ static njs_buffer_encoding_t njs_buffer }, { njs_null_str, 0, 0, 0 } - -#define njs_buffer_utf8_encoding() &njs_buffer_encodings[0] }; @@ -517,7 +515,7 @@ njs_buffer_byte_length(njs_vm_t *vm, njs njs_index_t unused) { size_t size; - njs_value_t *value, *enc; + njs_value_t *value; const njs_buffer_encoding_t *encoding; value = njs_arg(args, nargs, 1); @@ -536,14 +534,9 @@ njs_buffer_byte_length(njs_vm_t *vm, njs return NJS_OK; case NJS_STRING: - enc = njs_arg(args, nargs, 2); - encoding = njs_buffer_utf8_encoding(); - - if (njs_is_defined(enc)) { - encoding = njs_buffer_encoding(vm, enc); - if (njs_slow_path(encoding == NULL)) { - return NJS_ERROR; - } + encoding = njs_buffer_encoding(vm, njs_arg(args, nargs, 2)); + if (njs_slow_path(encoding == NULL)) { + return NJS_ERROR; } size = njs_buffer_decode_string_length(value, encoding); @@ -1452,7 +1445,6 @@ njs_buffer_prototype_write(njs_vm_t *vm, offset = 0; length = array->byte_length; - encoding = njs_buffer_utf8_encoding(); if (njs_slow_path(!njs_is_string(value))) { njs_type_error(vm, "first argument must be a string"); @@ -1483,18 +1475,11 @@ njs_buffer_prototype_write(njs_vm_t *vm, } } - if (njs_is_defined(enc)) { - if (njs_slow_path(!njs_is_string(enc))) { - njs_type_error(vm, "\"encoding\" argument must be of type string"); - return NJS_ERROR; - } - - encoding: - - encoding = njs_buffer_encoding(vm, enc); - if (njs_slow_path(encoding == NULL)) { - return NJS_ERROR; - } +encoding: + + encoding = njs_buffer_encoding(vm, enc); + if (njs_slow_path(encoding == NULL)) { + return NJS_ERROR; } buffer = njs_typed_array_writable(vm, array); @@ -1774,7 +1759,6 @@ njs_buffer_prototype_to_string(njs_vm_t start = 0; end = array->byte_length; - encoding = njs_buffer_utf8_encoding(); encoding = njs_buffer_encoding(vm, njs_arg(args, nargs, 1)); if (njs_slow_path(encoding == NULL)) { @@ -1921,8 +1905,6 @@ njs_buffer_prototype_index_of(njs_vm_t * njs_array_buffer_t *buffer; const njs_buffer_encoding_t *encoding; - encoding = njs_buffer_utf8_encoding(); - this = njs_argument(args, 0); value = njs_arg(args, nargs, 1); value_from = njs_arg(args, nargs, 2); @@ -1990,14 +1972,11 @@ njs_buffer_prototype_index_of(njs_vm_t * } } - if (njs_is_defined(enc)) { - - encoding: - - encoding = njs_buffer_encoding(vm, enc); - if (njs_slow_path(encoding == NULL)) { - return NJS_ERROR; - } +encoding: + + encoding = njs_buffer_encoding(vm, enc); + if (njs_slow_path(encoding == NULL)) { + return NJS_ERROR; } buffer = njs_typed_array_buffer(array); _______________________________________________ nginx-devel mailing list nginx-devel@nginx.org http://mailman.nginx.org/mailman/listinfo/nginx-devel