mirror of
https://github.com/yu-i-i/overleaf-cep.git
synced 2026-05-31 04:41:32 +02:00
Check if streams are already destroyed before destroying
This commit is contained in:
@@ -61,18 +61,18 @@ function getFile(req, res, next) {
|
||||
}
|
||||
|
||||
pipeline(fileStream, res, err => {
|
||||
if (err) {
|
||||
if (!fileStream.destroyed) {
|
||||
fileStream.destroy()
|
||||
if (err.code === 'ERR_STREAM_PREMATURE_CLOSE') {
|
||||
res.end()
|
||||
} else {
|
||||
next(
|
||||
new Errors.ReadError({
|
||||
message: 'error transferring stream',
|
||||
info: { bucket, key, format, style }
|
||||
}).withCause(err)
|
||||
)
|
||||
}
|
||||
}
|
||||
if (err && err.code === 'ERR_STREAM_PREMATURE_CLOSE') {
|
||||
res.end()
|
||||
} else if (err) {
|
||||
next(
|
||||
new Errors.ReadError({
|
||||
message: 'error transferring stream',
|
||||
info: { bucket, key, format, style }
|
||||
}).withCause(err)
|
||||
)
|
||||
}
|
||||
})
|
||||
})
|
||||
|
||||
@@ -114,7 +114,9 @@ function getReadyPipeline(...streams) {
|
||||
}
|
||||
if (err) {
|
||||
for (const stream of streams) {
|
||||
stream.destroy()
|
||||
if (!stream.destroyed) {
|
||||
stream.destroy()
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user