From e860e32e24e1c32db48f1d8b6f260c27aeb75657 Mon Sep 17 00:00:00 2001 From: Damien George Date: Mon, 6 May 2024 12:35:23 +1000 Subject: [PATCH] webassembly/objjsproxy: Fix proxying in arguments to JS new function. Signed-off-by: Damien George --- ports/webassembly/objjsproxy.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/ports/webassembly/objjsproxy.c b/ports/webassembly/objjsproxy.c index 15fbb5752..b575839d9 100644 --- a/ports/webassembly/objjsproxy.c +++ b/ports/webassembly/objjsproxy.c @@ -147,7 +147,7 @@ EM_JS(void, js_reflect_construct, (int f_ref, uint32_t n_args, uint32_t * args, const f = proxy_js_ref[f_ref]; const as = []; for (let i = 0; i < n_args; ++i) { - as.push(proxy_convert_mp_to_js_obj_jsside(args + i * 4)); + as.push(proxy_convert_mp_to_js_obj_jsside(args + i * 3 * 4)); } const ret = Reflect.construct(f, as); proxy_convert_js_to_mp_obj_jsside(ret, out); @@ -242,7 +242,7 @@ static mp_obj_t jsproxy_reflect_construct(size_t n_args, const mp_obj_t *args) { for (unsigned int i = 0; i < n_args; ++i) { proxy_convert_mp_to_js_obj_cside(args[i], &args_conv[i * PVN]); } - uint32_t out[3]; + uint32_t out[PVN]; js_reflect_construct(arg0, n_args, args_conv, out); return proxy_convert_js_to_mp_obj_cside(out); }