]> granicus.if.org Git - libevent/commitdiff
Do not close(-1) when freeing an uninitialized socket bufferevent
authorNick Mathewson <nickm@torproject.org>
Fri, 12 Mar 2010 23:36:18 +0000 (18:36 -0500)
committerNick Mathewson <nickm@torproject.org>
Sat, 13 Mar 2010 05:31:14 +0000 (00:31 -0500)
bufferevent_sock.c

index b373d432ef88c6d97cbf4bff917075f4943444ba..11e69da889986d4a15af943d1c8e950edf6b5106 100644 (file)
@@ -559,7 +559,7 @@ be_socket_destruct(struct bufferevent *bufev)
        event_del(&bufev->ev_read);
        event_del(&bufev->ev_write);
 
-       if (bufev_p->options & BEV_OPT_CLOSE_ON_FREE)
+       if ((bufev_p->options & BEV_OPT_CLOSE_ON_FREE) && fd >= 0)
                EVUTIL_CLOSESOCKET(fd);
 }