aboutsummaryrefslogtreecommitdiff
path: root/lib/progress.c
diff options
context:
space:
mode:
Diffstat (limited to 'lib/progress.c')
-rw-r--r--lib/progress.c13
1 files changed, 13 insertions, 0 deletions
diff --git a/lib/progress.c b/lib/progress.c
index 8c48c1ac1..b3052e425 100644
--- a/lib/progress.c
+++ b/lib/progress.c
@@ -103,6 +103,15 @@ void Curl_pgrsDone(struct connectdata *conn)
}
}
+/* reset all times except redirect */
+void Curl_pgrsResetTimes(struct SessionHandle *data)
+{
+ data->progress.t_nslookup = 0.0;
+ data->progress.t_connect = 0.0;
+ data->progress.t_pretransfer = 0.0;
+ data->progress.t_starttransfer = 0.0;
+}
+
void Curl_pgrsTime(struct SessionHandle *data, timerid timer)
{
switch(timer) {
@@ -134,6 +143,10 @@ void Curl_pgrsTime(struct SessionHandle *data, timerid timer)
case TIMER_POSTRANSFER:
/* this is the normal end-of-transfer thing */
break;
+ case TIMER_REDIRECT:
+ data->progress.t_redirect =
+ (double)Curl_tvdiff(Curl_tvnow(), data->progress.t_startsingle)/1000.0;
+ break;
}
}