From dee508c0f751147c006c214a0d722d8183662dcc Mon Sep 17 00:00:00 2001 From: Erik Date: Sun, 22 Mar 2015 11:02:31 -0400 Subject: [PATCH] fix race condition --- SwiftIO/SocketEngineClient.swift | 3 +-- SwiftIO/SocketIOClient.swift | 4 +--- 2 files changed, 2 insertions(+), 5 deletions(-) diff --git a/SwiftIO/SocketEngineClient.swift b/SwiftIO/SocketEngineClient.swift index 8e984c7..81ac7ee 100644 --- a/SwiftIO/SocketEngineClient.swift +++ b/SwiftIO/SocketEngineClient.swift @@ -26,7 +26,6 @@ import Foundation @objc public protocol SocketEngineClient { - var ackQueue:dispatch_queue_attr_t! {get} var handleQueue:dispatch_queue_attr_t! {get} var emitQueue:dispatch_queue_attr_t! {get} var reconnecting:Bool {get} @@ -38,4 +37,4 @@ import Foundation func pollingDidFail(err:NSError) func webSocketDidCloseWithCode(code:Int, reason:String, wasClean:Bool) func webSocketDidFailWithError(error:NSError) -} +} \ No newline at end of file diff --git a/SwiftIO/SocketIOClient.swift b/SwiftIO/SocketIOClient.swift index 662363c..0f13a3c 100644 --- a/SwiftIO/SocketIOClient.swift +++ b/SwiftIO/SocketIOClient.swift @@ -45,8 +45,6 @@ public class SocketIOClient: NSObject, SocketEngineClient { var waitingData = ContiguousArray() public let socketURL:String - public let ackQueue = dispatch_queue_create("ackQueue".cStringUsingEncoding(NSUTF8StringEncoding), - DISPATCH_QUEUE_SERIAL) public let handleQueue = dispatch_queue_create("handleQueue".cStringUsingEncoding(NSUTF8StringEncoding), DISPATCH_QUEUE_SERIAL) public let emitQueue = dispatch_queue_create("emitQueue".cStringUsingEncoding(NSUTF8StringEncoding), @@ -263,7 +261,7 @@ public class SocketIOClient: NSObject, SocketEngineClient { // If the server wants to know that the client received data func emitAck(ack:Int, withData args:[AnyObject]?) { - dispatch_async(self.ackQueue) {[weak self] in + dispatch_async(self.emitQueue) {[weak self] in if self == nil || !self!.connected || args == nil { return }