Skip to content

Commit e3bddee

Browse files
apapirovskiMylesBorins
authored andcommitted
http: fix undefined error in parser event
The current check for socket.server[kIncomingMessage] does not account for the possibility of a socket.server that doesn't have that property defined. Fix it. Backport-PR-URL: #22880 PR-URL: #20029Fixes: #19231 Reviewed-By: Ben Noordhuis <[email protected]> Reviewed-By: Luigi Pinca <[email protected]> Reviewed-By: Trivikram Kamat <[email protected]> Reviewed-By: James M Snell <[email protected]> Reviewed-By: Ruben Bridgewater <[email protected]> Reviewed-By: Khaidi Chu <[email protected]>
1 parent ce65d84 commit e3bddee

File tree

1 file changed

+6
-4
lines changed

1 file changed

+6
-4
lines changed

‎lib/_http_common.js‎

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -62,7 +62,8 @@ function parserOnHeaders(headers, url){
6262
functionparserOnHeadersComplete(versionMajor,versionMinor,headers,method,
6363
url,statusCode,statusMessage,upgrade,
6464
shouldKeepAlive){
65-
varparser=this;
65+
constparser=this;
66+
const{ socket }=parser;
6667

6768
if(!headers){
6869
headers=parser._headers;
@@ -75,10 +76,11 @@ function parserOnHeadersComplete(versionMajor, versionMinor, headers, method,
7576
}
7677

7778
// Parser is also used by http client
78-
varParserIncomingMessage=parser.socket&&parser.socket.server ?
79-
parser.socket.server[kIncomingMessage] : IncomingMessage;
79+
constParserIncomingMessage=(socket&&socket.server&&
80+
socket.server[kIncomingMessage])||
81+
IncomingMessage;
8082

81-
parser.incoming=newParserIncomingMessage(parser.socket);
83+
parser.incoming=newParserIncomingMessage(socket);
8284
parser.incoming.httpVersionMajor=versionMajor;
8385
parser.incoming.httpVersionMinor=versionMinor;
8486
parser.incoming.httpVersion=`${versionMajor}.${versionMinor}`;

0 commit comments

Comments
(0)