diff --git a/ios/TcpSockets.m b/ios/TcpSockets.m index fc99b73..e23ea5c 100644 --- a/ios/TcpSockets.m +++ b/ios/TcpSockets.m @@ -219,20 +219,23 @@ - (void)onWrittenData:(TcpSocketClient *)client msgId:(NSNumber *)msgId { - (void)onConnect:(TcpSocketClient *)client { GCDAsyncSocket *socket = [client getSocket]; - [self sendEventWithName:@"connect" - body:@{ - @"id" : client.id, - @"connection" : @{ - @"localAddress" : [socket localHost], - @"localPort" : - [NSNumber numberWithInt:[socket localPort]], - @"remoteAddress" : [socket connectedHost], - @"remotePort" : [NSNumber - numberWithInt:[socket connectedPort]], - @"remoteFamily" : [socket isIPv4] ? @"IPv4" - : @"IPv6" - } - }]; + if([socket localPort] != nil && [socket connectedPort] != nil) { + [self sendEventWithName:@"connect" + body:@{ + @"id" : client.id, + @"connection" : @{ + @"localAddress" : [socket localHost], + @"localPort" : + [NSNumber numberWithInt:[socket localPort]], + @"remoteAddress" : [socket connectedHost], + @"remotePort" : [NSNumber + numberWithInt:[socket connectedPort]], + @"remoteFamily" : [socket isIPv4] ? @"IPv4" + : @"IPv6" + } + }]; + } + } - (void)onListen:(TcpSocketClient *)server {