null+****@clear*****
null+****@clear*****
2011年 11月 12日 (土) 17:55:07 JST
Kouhei Sutou 2011-11-12 08:55:07 +0000 (Sat, 12 Nov 2011)
New Revision: b44eaaf692681d0f5a5d195a0e80b4b15962e03e
Log:
[com] fix valid socket FD check.
Modified files:
lib/com.c
Modified: lib/com.c (+2 -2)
===================================================================
--- lib/com.c 2011-11-12 08:10:19 +0000 (c70db59)
+++ lib/com.c 2011-11-12 08:55:07 +0000 (54cb155)
@@ -960,7 +960,7 @@ grn_com_sopen(grn_ctx *ctx, grn_com_event *ev,
const char *bind_address, int port, grn_msg_handler *func,
struct hostent *he)
{
- grn_sock lfd;
+ grn_sock lfd = -1;
grn_com *cs = NULL;
int getaddrinfo_result;
struct addrinfo *bind_address_info = NULL;
@@ -1042,7 +1042,7 @@ grn_com_sopen(grn_ctx *ctx, grn_com_event *ev,
}
cs->accepting = GRN_TRUE;
exit :
- if (!cs) { grn_sock_close(lfd); }
+ if (!cs && lfd != 1) { grn_sock_close(lfd); }
if (bind_address_info) { freeaddrinfo(bind_address_info); }
GRN_API_RETURN(ctx->rc);
}