From 596a499041ec13bdf14beba9ebb1a28fd5f892df Mon Sep 17 00:00:00 2001 From: Erik Date: Fri, 11 Mar 2016 13:41:09 -0500 Subject: [PATCH] work on fixing reconnect() --- Source/SocketEngine.swift | 4 ++++ Source/SocketIOClient.swift | 4 +++- 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/Source/SocketEngine.swift b/Source/SocketEngine.swift index 331bcab..07e12f1 100644 --- a/Source/SocketEngine.swift +++ b/Source/SocketEngine.swift @@ -301,6 +301,10 @@ public final class SocketEngine: NSObject, SocketEnginePollable, SocketEngineWeb client?.engineDidClose(reason) } + if closed { + return postSendClose(nil, nil, nil) + } + DefaultSocketLogger.Logger.log("Engine is being closed.", type: logType) if websocket { diff --git a/Source/SocketIOClient.swift b/Source/SocketIOClient.swift index ccfa824..981f744 100644 --- a/Source/SocketIOClient.swift +++ b/Source/SocketIOClient.swift @@ -423,7 +423,9 @@ public final class SocketIOClient: NSObject, SocketEngineClient, SocketParsable /// Tries to reconnect to the server. public func reconnect() { - tryReconnectWithReason("manual reconnect") + guard !reconnecting else { return } + + engine?.disconnect("manual reconnect") } /// Removes all handlers.