clean up start time and t_startsingle use so that redirect_time works properly

This commit is contained in:
Daniel Stenberg 2004-11-15 11:27:03 +00:00
parent 8475a0df2f
commit 5931d43a36
6 changed files with 28 additions and 16 deletions

16
CHANGES
View File

@ -6,8 +6,22 @@
Changelog
Daniel (15 November 2004)
- To test my fix for the CURLINFO_REDIRECT_TIME bug, I added time_redirect and
num_redirects support to the -w writeout option for the command line tool.
- Wojciech Zwiefka found out that CURLINFO_REDIRECT_TIME didn't work as
documented.
Daniel (12 November 2004)
- *** New Behaviour Alert ***
- Gisle Vanem modigied the MSVC and Netware makefiles to build without
libcurl.def
- Dan Fandrich added the --disable-crypto-auth option to configure to allow
libcurl to build without Digest support. (I figure it should also explicitly
disable Negotiate and NTLM.)
- *** Modified Behaviour Alert ***
Setting CURLOPT_POSTFIELDS to NULL will no longer do a GET.

View File

@ -6,10 +6,11 @@ Curl and libcurl 7.12.3
Available curl_easy_setopt() options: 121
Number of public functions in libcurl: 46
Amount of public web site mirrors: 13
Number of known libcurl bindings: 27
Number of known libcurl bindings: 28
This release includes the following changes:
o -w time_redirect and num_redirects
o no longer uses libcurl.def for building on Windows, OS/2 and Netware
o builds on Windows CE
o request retrying, --retry and family added
@ -18,6 +19,7 @@ This release includes the following changes:
This release includes the following bugfixes:
o CURLINFO_REDIRECT_TIME works
o building with gssapi libs and hdeaders in the default dirs
o curl_getdate() parsing of dates later than year 2037 with 32 bit time_t
o curl -v when stderr is closed wrote debug messages to the network socket
@ -34,6 +36,7 @@ Other curl-related news since the previous public release:
o pycurl 7.12.2: http://pycurl.sf.net/
o TclCurl 0.12.2: http://personal1.iddeo.es/andresgarci/tclcurl/english/
o libcurl.NET 1.1: http://www.seasideresearch.com/downloads.html
o RCurl 0.5.1: http://www.omegahat.org/RCurl/
This release would not have looked like this without help, code, reports and
advice from friends like these:

View File

@ -491,7 +491,7 @@ CURLcode Curl_is_connected(struct connectdata *conn,
*connected = FALSE; /* a very negative world view is best */
/* Evaluate in milliseconds how much time that has passed */
has_passed = Curl_tvdiff(Curl_tvnow(), data->progress.start);
has_passed = Curl_tvdiff(Curl_tvnow(), data->progress.t_startsingle);
/* subtract the most strict timeout of the ones */
if(data->set.timeout && data->set.connecttimeout) {
@ -716,7 +716,7 @@ CURLcode Curl_connecthost(struct connectdata *conn, /* context */
long has_passed;
/* Evaluate in milliseconds how much time that has passed */
has_passed = Curl_tvdiff(Curl_tvnow(), data->progress.start);
has_passed = Curl_tvdiff(Curl_tvnow(), data->progress.t_startsingle);
#ifndef min
#define min(a, b) ((a) < (b) ? (a) : (b))

View File

@ -1,10 +1,10 @@
#ifndef __PROGRESS_H
#define __PROGRESS_H
/***************************************************************************
* _ _ ____ _
* Project ___| | | | _ \| |
* / __| | | | |_) | |
* | (__| |_| | _ <| |___
* _ _ ____ _
* Project ___| | | | _ \| |
* / __| | | | |_) | |
* | (__| |_| | _ <| |___
* \___|\___/|_| \_\_____|
*
* Copyright (C) 1998 - 2004, Daniel Stenberg, <daniel@haxx.se>, et al.
@ -12,7 +12,7 @@
* This software is licensed as described in the file COPYING, which
* you should have received as part of this distribution. The terms
* are also available at http://curl.haxx.se/docs/copyright.html.
*
*
* You may opt to use, copy, modify, merge, publish, distribute and/or sell
* copies of the Software, and permit persons to whom the Software is
* furnished to do so, under the terms of the COPYING file.
@ -37,7 +37,7 @@ typedef enum {
TIMER_REDIRECT,
TIMER_LAST /* must be last */
} timerid;
void Curl_pgrsDone(struct connectdata *);
void Curl_pgrsStartNow(struct SessionHandle *data);
void Curl_pgrsSetDownloadSize(struct SessionHandle *data, curl_off_t size);

View File

@ -1273,7 +1273,7 @@ Curl_SSLConnect(struct connectdata *conn,
long has_passed;
/* Evaluate in milliseconds how much time that has passed */
has_passed = Curl_tvdiff(Curl_tvnow(), data->progress.start);
has_passed = Curl_tvdiff(Curl_tvnow(), data->progress.t_startsingle);
/* get the most strict timeout of the ones converted to milliseconds */
if(data->set.timeout &&

View File

@ -2259,11 +2259,6 @@ static CURLcode CreateConnection(struct SessionHandle *data,
conn->range = data->set.set_range; /* clone the range setting */
conn->resume_from = data->set.set_resume_from; /* inherite resume_from */
/* Set the start time temporary to this creation time to allow easier
timeout checks before the transfer has started for real. The start time
is later set "for real" using Curl_pgrsStartNow(). */
conn->data->progress.start = conn->created;
conn->bits.user_passwd = data->set.userpwd?1:0;
conn->bits.proxy_user_passwd = data->set.proxyuserpwd?1:0;
conn->bits.no_body = data->set.opt_no_body;