deno
c5ff4a05 - fix(ext/node): free the external on the remaining node:http abort paths

Commit
4 days ago
fix(ext/node): free the external on the remaining node:http abort paths Extends the uncommitted-abort external free to the two other abort sites in the dispatch wrapper: socketDestroyedBeforeDispatch (a prior pipelined handler destroyed the shared socket) and the on-cancel no-listener path. Like ServerResponse.destroy, they completed the record via op_http_abort_response but never consumed the external, leaking the record + its server_state clone so the server never drained. Null the JS refs (mirroring nativeCommit) and free with op_http_close_after_finish. Also make writeHead throw ERR_HTTP_INVALID_STATUS_CODE (matching Node) instead of ERR_INVALID_ARG_TYPE for out-of-range status codes. Fixes node:http test-http-incoming-pipelined-socket-destroy (hung).
Author
Committer
Parents
Loading