Commit 85a0ec9b2dcbfdb2c4ea95fc8a8f79e60a46ea62

Azat Khuzhin 2024-05-06T08:50:36

be: make the code in bufferevent_socket_connect() more reliable There is one icky in case for windows: if (sa) { #ifdef _WIN32 if (bufferevent_async_can_connect_(bev)) { bufferevent_setfd(bev, fd); r = bufferevent_async_connect_(bev, fd, sa, socklen); if (r < 0) goto freesock; bufev_p->connecting = 1; result = 0; goto done; - } else + } else { #endif r = evutil_socket_connect_(&fd, sa, socklen); if (r < 0) // Previosly this line was executed // regardless of bufferevent_async_can_connect_(), but the case under // bufferevent_async_can_connect_() always does goto, so it is 100% the // same code, but just to make it more cleaner goto freesock; +#ifdef _WIN32 + } +#endif }