Line
Link Here
|
0 |
-- icecream.orig/services/comm.cpp 2008-05-12 19:57:14.000000000 +0200 |
0 |
++ icecream/services/comm.cpp 2008-10-20 15:43:23.000000000 +0200 |
Lines 1160-1173
Link Here
|
1160 |
if (ask_fd >= 0) |
1160 |
if (ask_fd >= 0) |
1161 |
{ |
1161 |
{ |
|
|
1162 |
fcntl(ask_fd, F_SETFL, 0); |
1162 |
int status = connect (ask_fd, (struct sockaddr*) &remote_addr, sizeof(remote_addr) ); |
1163 |
int status = connect (ask_fd, (struct sockaddr*) &remote_addr, sizeof(remote_addr) ); |
1163 |
if (status == 0 || (status < 0 && errno == EISCONN)) |
1164 |
int connect_errno = errno; |
|
|
1165 |
fcntl(ask_fd, F_SETFL, O_NONBLOCK); |
1166 |
if (status == 0 || (status < 0 && connect_errno == EISCONN)) |
1164 |
{ |
1167 |
{ |
1165 |
int fd = ask_fd; |
1168 |
int fd = ask_fd; |
1166 |
ask_fd = -1; |
1169 |
ask_fd = -1; |
1167 |
return Service::createChannel(fd, |
1170 |
return Service::createChannel(fd, |
1168 |
(struct sockaddr*) &remote_addr, sizeof(remote_addr)); |
1171 |
(struct sockaddr*) &remote_addr, sizeof(remote_addr)); |
1169 |
} |
1172 |
} |
|
|
1173 |
else |
1174 |
{ |
1175 |
log_error() << "connect failed : " << strerror(connect_errno) << endl; |
1176 |
} |
1170 |
} |
1177 |
} |
1171 |
return 0; |
1178 |
return 0; |
1172 |
} |
1179 |
} |