From: Igor Sysoev Date: Wed, 4 Apr 2018 13:21:09 +0000 (+0300) Subject: Using correct code size addition. X-Git-Tag: 0.2.1~38 X-Git-Url: http://www.kaiwu.me/postgresql/commit/?a=commitdiff_plain;h=e3893b011726aa58292254219f13a036af985848;p=njs.git Using correct code size addition. Found by Clang Static Analyzer. --- diff --git a/njs/njs_parser_expression.c b/njs/njs_parser_expression.c index 28b53ce1..fbe6cb33 100644 --- a/njs/njs_parser_expression.c +++ b/njs/njs_parser_expression.c @@ -862,6 +862,11 @@ njs_parser_inc_dec_expression(njs_vm_t *vm, njs_parser_t *parser, return NJS_TOKEN_ILLEGAL; } + parser->code_size += (parser->node->token == NJS_TOKEN_NAME) + ? sizeof(njs_vmcode_3addr_t) + : sizeof(njs_vmcode_3addr_t) + + sizeof(njs_vmcode_prop_set_t); + node = njs_parser_node_alloc(vm); if (nxt_slow_path(node == NULL)) { return NJS_TOKEN_ERROR; @@ -873,12 +878,6 @@ njs_parser_inc_dec_expression(njs_vm_t *vm, njs_parser_t *parser, node->left = parser->node; parser->node = node; - parser->code_size += (token == NJS_TOKEN_NAME) - ? sizeof(njs_vmcode_3addr_t) - : sizeof(njs_vmcode_prop_get_t) - + sizeof(njs_vmcode_3addr_t) - + sizeof(njs_vmcode_prop_set_t); - return next; } @@ -918,6 +917,11 @@ njs_parser_post_inc_dec_expression(njs_vm_t *vm, njs_parser_t *parser, return NJS_TOKEN_ILLEGAL; } + parser->code_size += (parser->node->token == NJS_TOKEN_NAME) + ? sizeof(njs_vmcode_3addr_t) + : sizeof(njs_vmcode_3addr_t) + + sizeof(njs_vmcode_prop_set_t); + node = njs_parser_node_alloc(vm); if (nxt_slow_path(node == NULL)) { return NJS_TOKEN_ERROR; @@ -929,12 +933,6 @@ njs_parser_post_inc_dec_expression(njs_vm_t *vm, njs_parser_t *parser, node->left = parser->node; parser->node = node; - parser->code_size += (token == NJS_TOKEN_NAME) - ? sizeof(njs_vmcode_3addr_t) - : sizeof(njs_vmcode_prop_get_t) - + sizeof(njs_vmcode_3addr_t) - + sizeof(njs_vmcode_prop_set_t); - return njs_parser_token(parser); }