From 344998a8735ce690b46aa17dfc8dc1ffabd846fb Mon Sep 17 00:00:00 2001 From: Jarred Sumner <709451+Jarred-Sumner@users.noreply.github.com> Date: Mon, 4 Jul 2022 01:25:41 -0700 Subject: [PATCH] Fix `WebAssembly.instantiate` --- src/bun.js/event_loop.zig | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/src/bun.js/event_loop.zig b/src/bun.js/event_loop.zig index 95bf5456ca..df6af2748e 100644 --- a/src/bun.js/event_loop.zig +++ b/src/bun.js/event_loop.zig @@ -422,7 +422,13 @@ pub const EventLoop = struct { if (this.tickWithCount() == 0) break; } - this.global.vm().releaseWeakRefs(); + // This is JSC's event loop + // We don't actually use this. + // However, there are three uses of it in JavaScriptCore outside our control: + // 1. FinalizationRegistry callbacks + // 2. WebAssembly.instantiate + // 3. WebAssembly.instantiateStreaming + this.global.vm().doWork(); if (!ctx.disable_run_us_loop and ctx.us_loop_reference_count > 0 and !ctx.is_us_loop_entered) { ctx.is_us_loop_entered = true;