Commit 4fe25284 authored by Daniel Stenberg's avatar Daniel Stenberg
Browse files

ftp range downloads make us ignore the final status message as the server

will most likely treat the download as failed as we might abort it
pre-maturely
parent 109cbbe9
Loading
Loading
Loading
Loading
+7 −5
Original line number Diff line number Diff line
@@ -656,13 +656,14 @@ CURLcode Curl_ftp_done(struct connectdata *conn)
  sclose(conn->secondarysocket);
  conn->secondarysocket = -1;

  if(!data->set.no_body && !conn->bits.resume_done) {  
  /* 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) {  

    /* 226 Transfer complete, 250 Requested file action okay, completed. */
    if((ftpcode != 226) && (ftpcode != 250)) {
      failf(data, "server did not report OK, got %d", ftpcode);
@@ -1787,6 +1788,7 @@ CURLcode ftp_perform(struct connectdata *conn)
      }
      infof(data, "range-download from %d to %d, totally %d bytes\n",
            from, to, totalsize);
      conn->bits.resume_done = TRUE; /* to prevent some error due to this */
    }

    if((data->set.ftp_list_only) || !ftp->file) {