Fixed loosing POST packets on web socket connection failure and engine memory leak on server errors.
This commit is contained in:
parent
d07441e7fa
commit
b258a93750
@ -371,6 +371,9 @@ open class SocketEngine : NSObject, URLSessionDelegate, SocketEnginePollable, So
|
|||||||
fastUpgrade = false
|
fastUpgrade = false
|
||||||
probing = false
|
probing = false
|
||||||
flushProbeWait()
|
flushProbeWait()
|
||||||
|
if postWait.count != 0 {
|
||||||
|
flushWaitingForPostToWebSocket()
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private func flushProbeWait() {
|
private func flushProbeWait() {
|
||||||
@ -381,10 +384,6 @@ open class SocketEngine : NSObject, URLSessionDelegate, SocketEnginePollable, So
|
|||||||
}
|
}
|
||||||
|
|
||||||
probeWait.removeAll(keepingCapacity: false)
|
probeWait.removeAll(keepingCapacity: false)
|
||||||
|
|
||||||
if postWait.count != 0 {
|
|
||||||
flushWaitingForPostToWebSocket()
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/// Causes any packets that were waiting for POSTing to be sent through the WebSocket. This happens because when
|
/// Causes any packets that were waiting for POSTing to be sent through the WebSocket. This happens because when
|
||||||
|
|||||||
@ -169,6 +169,7 @@ open class SocketManager : NSObject, SocketManagerSpec, SocketParsable, SocketDa
|
|||||||
|
|
||||||
engine?.engineQueue.sync {
|
engine?.engineQueue.sync {
|
||||||
self.engine?.client = nil
|
self.engine?.client = nil
|
||||||
|
self.engine?.disconnect(reason: "Adding new engine")
|
||||||
}
|
}
|
||||||
|
|
||||||
engine = SocketEngine(client: self, url: socketURL, config: config)
|
engine = SocketEngine(client: self, url: socketURL, config: config)
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user