Skip to content
Commit Detail

Commit 1da1979

Author
Albert Pedersen <apedersen@cloudflare.com> 2026-02-19 14:02:06 +0100
Parents
4e89cca
Tree
111e88d
Fix KJ assertion failure when canceling HTMLRewriter transform

Defer fiber creation with evalLater() in Rewriter::write()/end(). When
the owning promise is dropped synchronously (e.g. by Canceler::cancel()
during PumpToReader teardown) before the event loop runs, no fiber is
created, avoiding a KJ assertion failure when destroying an unfired
fiber. Once the event loop processes the deferred call, the fiber is
created and fires immediately via armDepthFirst, so normal cancellation
semantics apply.

Signed-off-by: James M Snell <jsnell@cloudflare.com>

Files changed