From bccb159da0eeb1f3f3994a59003c5daacce4df1f Mon Sep 17 00:00:00 2001 From: Alexander Borisov Date: Wed, 22 Jul 2020 15:21:14 +0300 Subject: [PATCH] Fixed njs_value_property() for NJS_DECLINED from prop handler. This ensures retval has valid value for any case except NJS_ERROR. --- src/njs_value.c | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/src/njs_value.c b/src/njs_value.c index 4d5aba6d..a271a770 100644 --- a/src/njs_value.c +++ b/src/njs_value.c @@ -1033,8 +1033,12 @@ slow_path: ret = prop->value.data.u.prop_handler(vm, prop, value, NULL, &prop->value); - if (njs_slow_path(ret == NJS_ERROR)) { - return ret; + if (njs_slow_path(ret != NJS_OK)) { + if (ret == NJS_ERROR) { + return ret; + } + + njs_set_undefined(&prop->value); } *retval = prop->value; -- 2.47.3