commit - e0e26735232e1d664b3ccb49856f754d05015d0c
commit + 20d2d786a08eff2fabb7addf495c55753db0614f
blob - fe9fdd24ee551c9f088d78a9f8353545bab5ba39
blob + 2c742f36201aae6a61f3cf3937a503cee37d3a28
--- gemini.c
+++ gemini.c
}
req->fd = socket(req->p->ai_family, req->p->ai_socktype, req->p->ai_protocol);
- if (req->fd == -1)
+ if (req->fd == -1) {
req->p = req->p->ai_next;
- else {
+ try_to_connect(fd, ev, req);
+ } else {
mark_nonblock(req->fd);
if (connect(req->fd, req->p->ai_addr, req->p->ai_addrlen) == 0)
goto done;
+ yield_w(req, try_to_connect, NULL);
}
- try_to_connect(fd, ev, req);
return;
err: