Commit cae555c9 authored by Daniel Stenberg's avatar Daniel Stenberg
Browse files

when no FTP transfer was done, don't attempt to read the download transfer

thing. The 'resumed' flag is also causing confusions. I'll deal with that
tomorrow.
parent 407583e8
Loading
Loading
Loading
Loading
+12 −11
Original line number Diff line number Diff line
@@ -656,20 +656,21 @@ CURLcode Curl_ftp_done(struct connectdata *conn)
  sclose(conn->secondarysocket);
  conn->secondarysocket = -1;

  /* now let's see what the server says about the transfer we
     just performed: */
  if(!data->set.no_body) {
    /* now let's see what the server says about the transfer we just
       performed: */
    nread = Curl_GetFTPResponse(buf, conn, &ftpcode);
    if(nread < 0)
      return CURLE_OPERATION_TIMEOUTED;

  if(!data->set.no_body && !conn->bits.resume_done) {  

    if(!conn->bits.resume_done) {  
      /* 226 Transfer complete, 250 Requested file action okay, completed. */
      if((ftpcode != 226) && (ftpcode != 250)) {
        failf(data, "server did not report OK, got %d", ftpcode);
        return CURLE_FTP_WRITE_ERROR;
      }
    }
  }

  conn->bits.resume_done = FALSE; /* clean this for next connection */