mirror of
https://github.com/zebrajr/node.git
synced 2026-01-15 12:15:26 +00:00
http2: close fd in doSendFileFD()
This commit closes the file descriptor in two code paths that return from doSendFileFD(). PR-URL: https://github.com/nodejs/node/pull/23047 Fixes: https://github.com/nodejs/node/issues/23029 Reviewed-By: Ruben Bridgewater <ruben@bridgewater.de> Reviewed-By: Matteo Collina <matteo.collina@gmail.com> Reviewed-By: Anna Henningsen <anna@addaleax.net> Reviewed-By: James M Snell <jasnell@gmail.com> Reviewed-By: Trivikram Kamat <trivikr.dev@gmail.com>
This commit is contained in:
@@ -2149,6 +2149,7 @@ function doSendFileFD(session, options, fd, headers, streamOptions, err, stat) {
|
||||
isDirectory) {
|
||||
const err = isDirectory ?
|
||||
new ERR_HTTP2_SEND_FILE() : new ERR_HTTP2_SEND_FILE_NOSEEK();
|
||||
tryClose(fd);
|
||||
if (onError)
|
||||
onError(err);
|
||||
else
|
||||
@@ -2179,6 +2180,7 @@ function doSendFileFD(session, options, fd, headers, streamOptions, err, stat) {
|
||||
if ((typeof options.statCheck === 'function' &&
|
||||
options.statCheck.call(this, stat, headers) === false) ||
|
||||
(this[kState].flags & STREAM_FLAGS_HEADERS_SENT)) {
|
||||
tryClose(fd);
|
||||
return;
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user