summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDamien George <damien@micropython.org>2024-05-06 12:35:23 +1000
committerDamien George <damien@micropython.org>2024-05-06 14:47:05 +1000
commite860e32e24e1c32db48f1d8b6f260c27aeb75657 (patch)
tree31038b9dd240eeba759bd7189996d2527cb97892
parent50b43fec1a01710a08e1b56c1cf312877457bfa1 (diff)
webassembly/objjsproxy: Fix proxying in arguments to JS new function.
Signed-off-by: Damien George <damien@micropython.org>
-rw-r--r--ports/webassembly/objjsproxy.c4
1 files 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);
}