Fix GC leak in js_proxy_get() (#302)

Fixes #277
This commit is contained in:
Dmitry Volyntsev 2024-07-14 15:08:40 -07:00 committed by GitHub
parent 36911f0d3a
commit b3715f7cb1
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194

View File

@ -46151,8 +46151,10 @@ static JSValue js_proxy_get(JSContext *ctx, JSValueConst obj, JSAtom atom,
if (JS_IsException(ret)) if (JS_IsException(ret))
return JS_EXCEPTION; return JS_EXCEPTION;
res = JS_GetOwnPropertyInternal(ctx, &desc, JS_VALUE_GET_OBJ(s->target), atom); res = JS_GetOwnPropertyInternal(ctx, &desc, JS_VALUE_GET_OBJ(s->target), atom);
if (res < 0) if (res < 0) {
JS_FreeValue(ctx, ret);
return JS_EXCEPTION; return JS_EXCEPTION;
}
if (res) { if (res) {
if ((desc.flags & (JS_PROP_GETSET | JS_PROP_CONFIGURABLE | JS_PROP_WRITABLE)) == 0) { if ((desc.flags & (JS_PROP_GETSET | JS_PROP_CONFIGURABLE | JS_PROP_WRITABLE)) == 0) {
if (!js_same_value(ctx, desc.value, ret)) { if (!js_same_value(ctx, desc.value, ret)) {