chrisballinger / ProxyKit

SOCKS proxy server and socket client built upon GCDAsyncSocket.
MIT License
222 stars 59 forks source link

Library crashes when 'socket:didConnectToHost:port:' delegate works #4

Open soulfly opened 10 years ago

soulfly commented 10 years ago

My code:

_socket = [[GCDAsyncProxySocket alloc] init];
_socket.delegate = self;
[_socket setProxyHost:@"1.243.224.225" port:8080 version:GCDAsyncSocketSOCKSVersion5];
NSError *error;
BOOL success = [_socket connectToHost:@"chat.quickblox.com" onPort:5222 error:&error];
if(!success){
    NSLog(@"error %@", error);
}

I got a crash in library http://qblx.co/RuH4de

By some reason self.delegateQueue is nil here

I fixed this by setting it manually

_socket = [[GCDAsyncProxySocket alloc] init];
_socket.delegate = self;
_socket.delegateQueue = dispatch_queue_create("my delegate queue", 0);

but this is not a good solution