Fixed a memory leak and improper shutdown on SFTP post-quote command failure.

This commit is contained in:
Dan Fandrich 2007-04-04 00:46:16 +00:00
parent 6a2cecf153
commit 7d48d851a2
1 changed files with 3 additions and 5 deletions

View File

@ -949,6 +949,7 @@ CURLcode Curl_sftp_done(struct connectdata *conn, CURLcode status,
bool premature)
{
struct SSHPROTO *sftp = conn->data->reqdata.proto.ssh;
CURLcode rc = CURLE_OK;
(void)premature; /* not used */
Curl_safefree(sftp->path);
@ -959,10 +960,7 @@ CURLcode Curl_sftp_done(struct connectdata *conn, CURLcode status,
/* Before we shut down, see if there are any post-quote commands to send: */
if(!status && !premature && conn->data->set.postquote) {
CURLcode result = sftp_sendquote(conn, conn->data->set.postquote);
if (result != CURLE_OK)
return result;
rc = sftp_sendquote(conn, conn->data->set.postquote);
}
if (sftp->sftp_handle) {
@ -995,7 +993,7 @@ CURLcode Curl_sftp_done(struct connectdata *conn, CURLcode status,
(void)status; /* unused */
return CURLE_OK;
return rc;
}
/* return number of received (decrypted) bytes */