From f9809f0044e59de10c9d64a89715c6008608358c Mon Sep 17 00:00:00 2001 From: Ciro Spaciari Date: Thu, 1 Jun 2023 19:19:06 -0300 Subject: [napi] fix thread safe function callback (#3162) * fixup * add debug log message to event loop unexpected tag * fix fmt --- src/bun.js/event_loop.zig | 10 +++++++++- src/bun.js/events.exports.js | 4 +--- 2 files changed, 10 insertions(+), 4 deletions(-) (limited to 'src/bun.js') diff --git a/src/bun.js/event_loop.zig b/src/bun.js/event_loop.zig index ea7551b7f..c2125e64f 100644 --- a/src/bun.js/event_loop.zig +++ b/src/bun.js/event_loop.zig @@ -407,6 +407,7 @@ pub const EventLoop = struct { forever_timer: ?*uws.Timer = null, pub const Queue = std.fifo.LinearFifo(Task, .Dynamic); + const log = bun.Output.scoped(.EventLoop, false); pub fn tickWithCount(this: *EventLoop) u32 { var global = this.global; @@ -442,6 +443,10 @@ pub const EventLoop = struct { var transform_task: *JSC.napi.napi_async_work = task.get(JSC.napi.napi_async_work).?; transform_task.*.runFromJS(); }, + .ThreadSafeFunction => { + var transform_task: *ThreadSafeFunction = task.as(ThreadSafeFunction); + transform_task.call(); + }, @field(Task.Tag, @typeName(ReadFileTask)) => { var transform_task: *ReadFileTask = task.get(ReadFileTask).?; transform_task.*.runFromJS(); @@ -477,7 +482,10 @@ pub const EventLoop = struct { }, else => if (Environment.allow_assert) { bun.Output.prettyln("\nUnexpected tag: {s}\n", .{@tagName(task.tag())}); - } else unreachable, + } else { + log("\nUnexpected tag: {s}\n", .{@tagName(task.tag())}); + unreachable; + }, } global_vm.releaseWeakRefs(); diff --git a/src/bun.js/events.exports.js b/src/bun.js/events.exports.js index 482ef5f5d..61cff17d6 100644 --- a/src/bun.js/events.exports.js +++ b/src/bun.js/events.exports.js @@ -22,9 +22,7 @@ function EventEmitter(opts) { } this._maxListeners ??= undefined; - if ( - (this[kCapture] = opts?.captureRejections ? Boolean(opts?.captureRejections) : EventEmitterPrototype[kCapture]) - ) { + if ((this[kCapture] = opts?.captureRejections ? Boolean(opts?.captureRejections) : EventEmitterPrototype[kCapture])) { this.emit = emitWithRejectionCapture; } } -- cgit v1.2.3 ort.meta.resolve'>dave/import.meta.resolve Unnamed repository; edit this file 'description' to name the repository.
aboutsummaryrefslogtreecommitdiff
path: root/integration/bunjs-only-snippets/ffi.test.js (unfollow)
AgeCommit message (Expand)AuthorFilesLines
2022-06-22Move builtins to src/javascript/jsc/builtinsGravatar Jarred Sumner 72-6/+2285
2022-06-22Tweak test runner outputGravatar Jarred Sumner 1-90/+44
2022-06-22Cleanup some testsGravatar Jarred Sumner 2-8/+46
2022-06-22Update Dockerfile.baseGravatar Jarred Sumner 1-1/+1
2022-06-22Update WebKitGravatar Jarred Sumner 1-0/+0
2022-06-22cleanup websocket testGravatar Jarred Sumner 1-3/+6
2022-06-22Fix `WebSocket` when HTTP server is not runningGravatar Jarred Sumner 14-38/+103
2022-06-22Update build-idGravatar Jarred Sumner 1-1/+1
2022-06-22cleanupGravatar Jarred Sumner 6-719/+3
2022-06-22Update index.d.tsGravatar Jarred Sumner 1-0/+1
2022-06-22types for `bun:jsc`Gravatar Jarred Sumner 2-1/+37
2022-06-22Slightly customize the `events` polyfill so it uses ESMGravatar Jarred Sumner 1-1/+522
2022-06-22Fix memory bugs in escapeHTML & arrayBufferToStringGravatar Jarred Sumner 1-65/+61