Skip to content
Snippets Groups Projects
Commit 2b59e90c authored by Daniel Stenberg's avatar Daniel Stenberg
Browse files

fix progress data to be updated properly for file: transfers, as reported

by Jesse Noller
parent 59a30e6d
No related branches found
No related tags found
No related merge requests found
......@@ -174,6 +174,7 @@ CURLcode Curl_file(struct connectdata *conn)
char *buf = data->state.buffer;
curl_off_t bytecount = 0;
int fd;
struct timeval now = Curl_tvnow();
/* get the fd from the connection phase */
fd = conn->proto.file->fd;
......@@ -239,6 +240,8 @@ CURLcode Curl_file(struct connectdata *conn)
if(conn->resume_from)
lseek(fd, conn->resume_from, SEEK_SET);
Curl_pgrsTime(data, TIMER_STARTTRANSFER);
while (res == CURLE_OK) {
nread = read(fd, buf, BUFSIZE-1);
......@@ -258,8 +261,12 @@ CURLcode Curl_file(struct connectdata *conn)
if(res)
return res;
Curl_pgrsSetDownloadCounter(data, (double)bytecount);
if(Curl_pgrsUpdate(conn))
res = CURLE_ABORTED_BY_CALLBACK;
else
res = Curl_speedcheck (data, now);
}
if(Curl_pgrsUpdate(conn))
res = CURLE_ABORTED_BY_CALLBACK;
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment