Commit b52cf5d2 authored by Steve Holme's avatar Steve Holme
Browse files

smtp: Fixed unknown percentage complete in progress bar

The curl command line utility would display the the completed progress
bar with a percentage of zero as the progress routines didn't know the
size of the transfer.
parent 073e83b5
Loading
Loading
Loading
Loading
+1 −0
Original line number Diff line number Diff line
@@ -37,6 +37,7 @@ This release includes the following bugfixes:
 o sshserver: disable StrictHostKeyChecking
 o ftpserver: Fixed imap logout confirmation data
 o curl_easy_init: use less mallocs
 o smtp: Fixed unknown percentage complete in progress bar
 o 

This release includes the following known bugs:
+6 −1
Original line number Diff line number Diff line
@@ -589,7 +589,7 @@ static CURLcode smtp_perform_mail(struct connectdata *conn)
    }
  }

  /* calculate the optional SIZE parameter */
  /* Calculate the optional SIZE parameter */
  if(conn->proto.smtpc.size_supported && conn->data->set.infilesize > 0) {
    size = aprintf("%" FORMAT_OFF_T, data->set.infilesize);

@@ -1172,6 +1172,8 @@ static CURLcode smtp_state_rcpt_resp(struct connectdata *conn, int smtpcode,
static CURLcode smtp_state_data_resp(struct connectdata *conn, int smtpcode,
                                     smtpstate instate)
{
  struct SessionHandle *data = conn->data;

  (void)instate; /* no use for this yet */

  if(smtpcode != 354) {
@@ -1179,6 +1181,9 @@ static CURLcode smtp_state_data_resp(struct connectdata *conn, int smtpcode,
    return CURLE_SEND_ERROR;
  }

  /* Set the progress upload size */
  Curl_pgrsSetUploadSize(data, data->set.infilesize);

  /* SMTP upload */
  Curl_setup_transfer(conn, -1, -1, FALSE, NULL, FIRSTSOCKET, NULL);