diff --git a/Libraries/WebSocket/RCTWebSocketManager.m b/Libraries/WebSocket/RCTWebSocketManager.m index d863db997f8..f577ae2e042 100644 --- a/Libraries/WebSocket/RCTWebSocketManager.m +++ b/Libraries/WebSocket/RCTWebSocketManager.m @@ -22,23 +22,21 @@ @interface RCTWebSocketObserver : NSObject { NSURL *_url; + RCTSRWebSocket *_socket; } -@property (nonatomic, strong) RCTSRWebSocket *socket; -@property (nonatomic, weak) id delegate; -@property (nonatomic, strong) dispatch_semaphore_t socketOpenSemaphore; +- (instancetype)initWithURL:(NSURL *)url; -- (instancetype)initWithURL:(NSURL *)url delegate:(id)delegate; +@property (nonatomic, weak) id delegate; @end @implementation RCTWebSocketObserver -- (instancetype)initWithURL:(NSURL *)url delegate:(id)delegate +- (instancetype)initWithURL:(NSURL *)url { if ((self = [self init])) { _url = url; - _delegate = delegate; } return self; } @@ -131,7 +129,8 @@ observer.delegate = delegate; } } else { - RCTWebSocketObserver *newObserver = [[RCTWebSocketObserver alloc] initWithURL:url delegate:delegate]; + RCTWebSocketObserver *newObserver = [[RCTWebSocketObserver alloc] initWithURL:url]; + newObserver.delegate = delegate; [newObserver start]; _sockets[key] = newObserver; }