From ea5d8394949c821f252e048908dfc3c74c27d383 Mon Sep 17 00:00:00 2001 From: Dmitry Volyntsev Date: Thu, 25 Apr 2019 15:50:03 +0300 Subject: [PATCH] Disabling njs_retain() and njs_release(). Until there is a working GC. --- njs/njs_vm.c | 4 ++-- njs/njs_vm.h | 11 +++++++++++ 2 files changed, 13 insertions(+), 2 deletions(-) diff --git a/njs/njs_vm.c b/njs/njs_vm.c index eed8f593..da776fda 100644 --- a/njs/njs_vm.c +++ b/njs/njs_vm.c @@ -172,7 +172,7 @@ start: if (vmcode->code.retval) { retval = njs_vmcode_operand(vm, vmcode->operand1); - //njs_release(vm, retval); + njs_release(vm, retval); *retval = vm->retval; } } @@ -2860,7 +2860,7 @@ njs_vmcode_restart(njs_vm_t *vm, njs_value_t *invld1, njs_value_t *invld2) retval = njs_vmcode_operand(vm, vmcode->operand1); - //njs_release(vm, retval); + njs_release(vm, retval); *retval = vm->retval; diff --git a/njs/njs_vm.h b/njs/njs_vm.h index bb30ecde..57c01333 100644 --- a/njs/njs_vm.h +++ b/njs/njs_vm.h @@ -562,6 +562,8 @@ typedef njs_ret_t (*njs_vmcode_operation_t)(njs_vm_t *vm, njs_value_t *value1, (value)->type = NJS_INVALID +#if 0 /* GC: todo */ + #define njs_retain(value) \ do { \ if ((value)->data.truth == NJS_STRING_LONG) { \ @@ -577,6 +579,15 @@ typedef njs_ret_t (*njs_vmcode_operation_t)(njs_vm_t *vm, njs_value_t *value1, } \ } while (0) +#else + +#define njs_retain(value) + + +#define njs_release(vm, value) + +#endif + #define NJS_VMCODE_3OPERANDS 0 #define NJS_VMCODE_2OPERANDS 1 -- 2.47.3