diff options
author | Igor Sysoev <igor@sysoev.ru> | 2006-11-22 16:00:14 +0000 |
---|---|---|
committer | Igor Sysoev <igor@sysoev.ru> | 2006-11-22 16:00:14 +0000 |
commit | 0de2e655cfae053725660e03e8ff49e427a566a0 (patch) | |
tree | cf6904f82d603bb45c8e68f7e2c3bd9b52821406 | |
parent | f4eb0173332488359c982003aafd5d31e31fe2b2 (diff) | |
download | nginx-0de2e655cfae053725660e03e8ff49e427a566a0.tar.gz nginx-0de2e655cfae053725660e03e8ff49e427a566a0.zip |
fix segfault when connect() failed
-rw-r--r-- | src/imap/ngx_imap_auth_http_module.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/src/imap/ngx_imap_auth_http_module.c b/src/imap/ngx_imap_auth_http_module.c index beca1950d..d39c29502 100644 --- a/src/imap/ngx_imap_auth_http_module.c +++ b/src/imap/ngx_imap_auth_http_module.c @@ -182,7 +182,10 @@ ngx_imap_auth_http_init(ngx_imap_session_t *s) rc = ngx_event_connect_peer(&ctx->peer); if (rc == NGX_ERROR || rc == NGX_BUSY || rc == NGX_DECLINED) { - ngx_close_connection(ctx->peer.connection); + if (ctx->peer.connection) { + ngx_close_connection(ctx->peer.connection); + } + ngx_destroy_pool(ctx->pool); ngx_imap_session_internal_server_error(s); return; |