ports/net/wire/files/patch-wire-client.c
Edward Tomasz Napierala e18bbb441d - Update to 1.1.2
2007-12-16 13:51:28 +00:00

38 lines
952 B
C

--- wire/client.c (revision 5082)
+++ wire/client.c (revision 5145)
@@ -216,13 +216,20 @@
wi_address_set_port(address, port);
- socket = wi_socket_init_with_address(wi_socket_alloc(), address, WI_SOCKET_TCP);
+ socket = wi_autorelease(wi_socket_init_with_address(wi_socket_alloc(), address, WI_SOCKET_TCP));
+
+ if(!socket) {
+ wr_printf_prefix(WI_STR("Could not open a socket to %@: %m"), ip);
+
+ continue;
+ }
+
wi_socket_set_interactive(socket, true);
if(!wi_socket_connect(socket, wr_socket_context, 10.0)) {
wr_printf_prefix(WI_STR("Could not connect to %@: %m"), ip);
- goto next;
+ continue;
}
wr_printf_prefix(WI_STR("Connected using %@/%@/%u bits, logging in..."),
@@ -241,11 +248,7 @@
wr_runloop_add_socket(wr_socket, &wr_runloop_server_callback);
wr_send_command(WI_STR("HELLO"));
-next:
- wi_release(socket);
-
- if(wr_connected)
- break;
+ break;
}
if(wr_socket)