harden code
Massimo Melina committed
Apr 1, 2026 at 17:56 UTC
2d32347e5ac2ae5913b2e016ac2ec761934ebfdf
1 file changed
+3
-3
src/index.ts
+3
-3
@@ -61,13 +61,13 @@ app.use(sessionMiddleware)
61
.on('error', errorHandler)
62
events.emit('app', app)
63
64
-function errorHandler(err:Error & { code:string, path:string }) {
64
+function errorHandler(err: Error & { code?: string, path?: string }) {
65
const { code } = err
66
- if (DEV && code === 'ENOENT' && err.path.endsWith('sockjs-node')) return // spam out dev stuff
66
+ if (DEV && code === 'ENOENT' && err.path?.endsWith('sockjs-node')) return // spam out dev stuff
67
if (code === 'ECANCELED' || code === 'ECONNRESET' || code === 'ECONNABORTED' || code === 'EPIPE'
68
|| code === 'ERR_STREAM_WRITE_AFTER_END' // happens disconnecting uploads, don't care
69
|| code === 'ERR_STREAM_PREMATURE_CLOSE' // happens when many files are sent (not locally), but I checked that the files are written completely. Introduced after node18.5.0 and is thrown by pipeline() used by PUT method handler.
70
- || code.startsWith('HPE')) return // malformed client/probe HTTP parser errors, not internal failures
70
+ || code?.startsWith('HPE')) return // malformed client/probe HTTP parser errors, not internal failures
71
console.error('server error', err)
72
}
73