diff options
Diffstat (limited to 'src/users.cpp')
-rw-r--r-- | src/users.cpp | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/src/users.cpp b/src/users.cpp index f455bb825..4918c417b 100644 --- a/src/users.cpp +++ b/src/users.cpp @@ -202,7 +202,9 @@ userrec::userrec() invites.clear(); chans.resize(MAXCHANS); memset(modes,0,sizeof(modes)); - +#ifndef THREADED_DNS + dns_fd = -1; +#endif for (unsigned int n = 0; n < MAXCHANS; n++) { ucrec* x = new ucrec(); @@ -219,6 +221,11 @@ userrec::~userrec() ucrec* x = (ucrec*)*n; DELETE(x); } + if (dns_fd > -1) + { + shutdown(dns_fd, 2); + close(dns_fd); + } } /* XXX - minor point, other *Host functions return a char *, this one creates it. Might be nice to be consistant? */ |