From a9beeeeeeac018157412e4510342554a48df54f4 Mon Sep 17 00:00:00 2001
From: Daniel Stenberg <daniel@haxx.se>
Date: Thu, 2 Oct 2014 23:01:45 +0200
Subject: [PATCH] imap_perform_authentication: fix memory leak

Coverity CID 1215296. There's a potential risk for a memory leak in
here, and moving the free call to be unconditional seems like a cheap
price to remove the risk.
---
 lib/imap.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/lib/imap.c b/lib/imap.c
index 9fc472866..ee1bad295 100644
--- a/lib/imap.c
+++ b/lib/imap.c
@@ -634,8 +634,6 @@ static CURLcode imap_perform_authentication(struct connectdata *conn)
     if(mech && (imapc->preftype & IMAP_TYPE_SASL)) {
       /* Perform SASL based authentication */
       result = imap_perform_authenticate(conn, mech, initresp, state1, state2);
-
-      Curl_safefree(initresp);
     }
     else if((!imapc->login_disabled) &&
             (imapc->preftype & IMAP_TYPE_CLEARTEXT))
@@ -648,6 +646,8 @@ static CURLcode imap_perform_authentication(struct connectdata *conn)
     }
   }
 
+  Curl_safefree(initresp);
+
   return result;
 }
 
-- 
2.40.0