aboutsummaryrefslogtreecommitdiff
path: root/lib/progress.c
AgeCommit message (Collapse)Author
2010-03-24remove the CVSish $Id$ linesDaniel Stenberg
2009-11-05avoid division by zeroYang Tse
2009-11-04- I fixed several problems with the transfer progress meter. It showed theDaniel Stenberg
wrong percentage for small files, most notable for <1000 bytes and could easily end up showing more than 100% at the end. It also didn't show any percentage, transfer size or estimated transfer times when transferring less than 100 bytes.
2009-10-31- Gabriel Kuri reported a problem with CURLINFO_CONTENT_LENGTH_DOWNLOAD if theDaniel Stenberg
download was 0 bytes, as libcurl would then return the size as unknown (-1) and not 0. I wrote a fix and test case 566 to verify it.
2008-10-11fix compiler warning: explicit conversion of a 64-bit integral type to a ↵Yang Tse
smaller integral type
2008-08-26Use SIZEOF_OFF_T definition from config fileYang Tse
2008-08-16Library internal only C preprocessor macros FORMAT_OFF_T and FORMAT_OFF_TUYang Tse
remain in use as internal curl_off_t print formatting strings for the internal *printf functions which still cannot handle print formatting string directives such as "I64d", "I64u", and others available on MSVC, MinGW, Intel's ICC, and other DOS/Windows compilers. This reverts previous commit part which did: FORMAT_OFF_T -> CURL_FORMAT_CURL_OFF_T FORMAT_OFF_TU -> CURL_FORMAT_CURL_OFF_TU
2008-08-15For congruency sake with the naming of other CURL_XXXXXX_CURL_OFF_T macros,Yang Tse
the names of the curl_off_t formatting string directives now become CURL_FORMAT_CURL_OFF_T and CURL_FORMAT_CURL_OFF_TU. CURL_FMT_OFF_T -> CURL_FORMAT_CURL_OFF_T CURL_FMT_OFF_TU -> CURL_FORMAT_CURL_OFF_TU Remove the use of an internal name for the curl_off_t formatting string directives and use the common one available from the inside and outside of the library. FORMAT_OFF_T -> CURL_FORMAT_CURL_OFF_T FORMAT_OFF_TU -> CURL_FORMAT_CURL_OFF_TU
2008-08-12Fix curl_off_t sized constants usageYang Tse
2008-08-11 s/SIZEOF_CURL_OFF_T/CURL_SIZEOF_CURL_OFF_T/gYang Tse
2008-07-03Introcuding a new timestamp for curl_easy_getinfo():Daniel Stenberg
CURLINFO_APPCONNECT_TIME. This is set with the "application layer" handshake/connection is completed (typically SSL, TLS or SSH). By using this you can figure out the application layer's own connect time. You can extract the time stamp using curl's -w option and the new variable named 'time_appconnect'. This feature was sponsored by Lenny Rachitsky at NeuStar.
2007-11-24struct HandleData is now called struct SingleRequest, and is only for data thatDaniel Stenberg
is inited at the start of the DO action. I removed the Curl_transfer_keeper struct completely, and I had to move out a few struct members (that had to be set before DO or used after DONE) to the UrlState struct. The SingleRequest struct is accessed with SessionHandle->req. One of the biggest reasons for doing this was the bunch of duplicate struct members in HandleData and Curl_transfer_keeper since it was really messy to keep track of two variables with the same name and basically the same purpose!
2007-04-18- Prevent the internal progress meter from updating more frequently than onceDaniel Stenberg
per second.
2007-03-23Change spelling, ONE_TERRABYTE -> ONE_TERABYTEYang Tse
Shave off a couple of function calls in the part of Curl_pgrsUpdate() which is always executed when called. Fix a couple of comments.
2007-03-19Bryan Henderson fixed the progress function so that it can get calledYang Tse
more frequently allowing same calling frecuency for the client progress callback, while keeping the once a second frecuency for speed calculations and internal display of the transfer progress.
2007-03-11reverted the pselect patch => http://curl.haxx.se/mail/lib-2007-03/0100.htmlDaniel Stenberg
2007-03-10- Bryan Henderson introduces two things:Daniel Stenberg
1) the progress callback gets called more frequently (at times) 2) libcurl *might* call the callback when it receives a signal
2006-10-27Update copyright year, since the file has been modifiedYang Tse
2006-09-07Major overhaul introducing http pipelining support and shared connectionDaniel Stenberg
cache within the multi handle.
2004-11-26As reported in Mandrake's bug tracker bug 12289Daniel Stenberg
(http://qa.mandrakesoft.com/show_bug.cgi?id=12289), curl would print a newline to "finish" the progress meter after each redirect and not only after a completed transfer.
2004-10-08prevent warning with comparison between signed and unsignedDaniel Stenberg
2004-10-06removed tabs and trailing whitespace from sourceDaniel Stenberg
2004-08-10more typecasts to please picky compilersDaniel Stenberg
2004-07-02explicit typecasts to double to prevent warnings about implicit conversionsDaniel Stenberg
that might lose accuracy
2004-07-01typecast to int when the variable is int!Daniel Stenberg
2004-06-24Replaced all uses of sprintf() with the safer snprintf(). It is just aDaniel Stenberg
precaution to prevent mistakes to lead to buffer overflows.
2004-05-21quickfix to avoid division by zero, possibly we should go over all of theseDaniel Stenberg
once and for all
2004-05-20calculate upload and download speed using doubles to keep precision.Daniel Stenberg
deleted trailing whitespace
2004-05-05hm, avoid division by zero more carefully with that new percentage mathDaniel Stenberg
2004-05-05Gisle fixed the percentage to work, I adjusted it slightly to not as easilyDaniel Stenberg
overflow on 32bit filesize-systems
2004-05-05made the progress meter display not overflow even if _very_ large filesDaniel Stenberg
are transfered. The maximum size we support now is 8 exabytes, which equals to 8192 petabytes...
2004-05-05if the values allow it, avoid floting point math for the current speedDaniel Stenberg
2004-04-19Gisle Vanem corrected a mistake in a recent progress fixDaniel Stenberg
2004-04-09Dirk Manske increased the resolution for what the CURLINFO_*_TIME return.Daniel Stenberg
2004-04-02Dirk Manske's feedback:Daniel Stenberg
* bring back subsecond resolution to CURLINFO_TOTAL_TIME * Fix the Curl_pgrsDone() so that the final progress update is shown properly
2004-03-23made time2str() use longs internally instead to prevent compiler warningsDaniel Stenberg
when converting to ints
2004-03-23added explicit typecasts to prevent compiler warnings on variable conversionsDaniel Stenberg
2004-03-23it actually fits to make a NNNd NNh display so this can be used up toDaniel Stenberg
999 days
2004-03-23Fixed the time fields no never get wider than 8 letters. They can now switchDaniel Stenberg
to a "days + hours" or even "just days" display if the time value is very large. I also switched several calculations over to fixed-point instead of the previous doubles.
2004-03-11Made max5data() take a curl_off_t size as argument instead of double. ShouldDaniel Stenberg
make the progress meter more accurate for large files. Also made the sprintf usage in that function avoid floating point.
2004-03-10Use more curl_off_t variables when doing the progress meter calculations andDaniel Stenberg
argument passing and try to convert to double only when providing data to the external world.
2004-03-02Yet another curl_off_t printf format attempt, we now exclude the %-letter fromDaniel Stenberg
FORMAT_OFF_T to allow additional options to get specified, like with '"%5" FORMAT_OFF_T'.
2004-03-02use FORMAT_OFF_T instead of CURL_FORMAT_OFF_T to reduce the complexity ofDaniel Stenberg
having to redef that name
2004-03-01Use CURL_FORMAT_OFF_T for printf()inf curl_off_t variables.Daniel Stenberg
2004-01-29Dan Fandrich's cleanup patch to make pedantic compiler options cause lessDaniel Stenberg
warnings. Minor edits by me.
2004-01-27very big transfers now get nicer progress displayed after 9999 megabytes haveDaniel Stenberg
been transfered!
2004-01-23fixed the progress meter display for files >32 bit, Gisle Vanem reportedDaniel Stenberg
2004-01-15use the %dk display for one extra k of progressDaniel Stenberg
2004-01-07updated year in the copyright stringDaniel Stenberg
2004-01-05David J Meyer's large file support.Daniel Stenberg