Fix exception when TCP connection drops abruptly
This commit is contained in:
1 parent
ed3239e4db
commit
73295729c8
2 files changed
+5
-11
No files matched your search
+2
-3
@@ -67,12 +67,13 @@ writeResponse = (sessionContext, res) ->
|
||||
res.headers['Content-Length'] = data.length
|
||||
sessionContext.httpResponse.writeHead(res.code, res.headers)
|
||||
sessionContext.httpResponse.end(data)
|
||||
delete sessionContext.httpRequest
|
||||
delete sessionContext.httpResponse
|
||||
)
|
||||
else
|
||||
res.headers['Content-Length'] = res.data.length
|
||||
sessionContext.httpResponse.writeHead(res.code, res.headers)
|
||||
sessionContext.httpResponse.end(res.data)
|
||||
|
||||
delete sessionContext.httpRequest
|
||||
delete sessionContext.httpResponse
|
||||
|
||||
@@ -608,8 +609,6 @@ onConnection = (socket) ->
|
||||
socket.on('close', () ->
|
||||
sessions = currentSessions.get(socket)
|
||||
for sessionId, sessionContext of sessions
|
||||
delete sessionContext.httpRequest
|
||||
delete sessionContext.httpResponse
|
||||
session.serialize(sessionContext, (err, sessionContextString) ->
|
||||
return throwError(err) if err
|
||||
# TODO don't set if process is shutting down
|
||||
|
||||
+3
-8
@@ -1599,20 +1599,15 @@ serialize = (sessionContext, callback) ->
|
||||
|
||||
deviceData.push(e)
|
||||
|
||||
oldDeviceData = sessionContext.deviceData
|
||||
oldSyncState = sessionContext.syncState
|
||||
oldToLoad = sessionContext.toLoad
|
||||
|
||||
sessionContext = Object.assign({}, sessionContext)
|
||||
sessionContext.deviceData = deviceData
|
||||
delete sessionContext.syncState
|
||||
delete sessionContext.toLoad
|
||||
delete sessionContext.httpRequest
|
||||
delete sessionContext.httpResponse
|
||||
|
||||
sessionContextString = JSON.stringify(sessionContext)
|
||||
|
||||
sessionContext.deviceData = oldDeviceData
|
||||
sessionContext.syncState = oldSyncState
|
||||
sessionContext.toLoad = oldToLoad
|
||||
|
||||
return callback(null, sessionContextString)
|
||||
|
||||
|
||||
|
||||
Reference in new issue
Block a user