# HG changeset patch # User Timo Sirainen # Date 1042113926 -7200 # Node ID a763b3826762bf911cf4bf2221ba53c0e1edb5d5 # Parent 0da2cb9368f61b58ce1ab1d272bb845058267761 Don't leak fds in case of errors. diff -r 0da2cb9368f6 -r a763b3826762 src/master/login-process.c --- a/src/master/login-process.c Thu Jan 09 01:55:44 2003 +0200 +++ b/src/master/login-process.c Thu Jan 09 14:05:26 2003 +0200 @@ -127,6 +127,11 @@ i_error("login: fd_read() failed: %m"); } + if (client_fd != -1) { + if (close(client_fd) < 0) + i_error("close(imap client) failed: %m"); + } + login_process_destroy(p); return; } @@ -147,6 +152,8 @@ it's not trying to exploit us */ if (!VALIDATE_STR(req.login_tag)) { i_error("login: Received corrupted data"); + if (close(client_fd) < 0) + i_error("close(imap client) failed: %m"); login_process_destroy(p); return; }