Commit c55d0bb8 authored by Daniel Stenberg's avatar Daniel Stenberg
Browse files

We need at least one millisecond to calculate current speed with! I also

made the getinfo() stuff divide with 1000.0 now to enforce floating point
since Paul Harrington claims the 7.9.1 still uses even second resolution
in the timers there
parent 0ffec712
Loading
Loading
Loading
Loading
+5 −3
Original line number Original line Diff line number Diff line
@@ -119,15 +119,15 @@ void Curl_pgrsTime(struct SessionHandle *data, timerid timer)


  case TIMER_NAMELOOKUP:
  case TIMER_NAMELOOKUP:
    data->progress.t_nslookup +=
    data->progress.t_nslookup +=
      (double)Curl_tvdiff(Curl_tvnow(), data->progress.t_startsingle)/1000;
      (double)Curl_tvdiff(Curl_tvnow(), data->progress.t_startsingle)/1000.0;
    break;
    break;
  case TIMER_CONNECT:
  case TIMER_CONNECT:
    data->progress.t_connect +=
    data->progress.t_connect +=
      (double)Curl_tvdiff(Curl_tvnow(), data->progress.t_startsingle)/1000;
      (double)Curl_tvdiff(Curl_tvnow(), data->progress.t_startsingle)/1000.0;
    break;
    break;
  case TIMER_PRETRANSFER:
  case TIMER_PRETRANSFER:
    data->progress.t_pretransfer +=
    data->progress.t_pretransfer +=
      (double)Curl_tvdiff(Curl_tvnow(), data->progress.t_startsingle)/1000;
      (double)Curl_tvdiff(Curl_tvnow(), data->progress.t_startsingle)/1000.0;
    break;
    break;
  case TIMER_POSTRANSFER:
  case TIMER_POSTRANSFER:
    /* this is the normal end-of-transfer thing */
    /* this is the normal end-of-transfer thing */
@@ -275,6 +275,8 @@ int Curl_pgrsUpdate(struct connectdata *conn)
    /* Figure out the exact time for the time span */
    /* Figure out the exact time for the time span */
    span_ms = Curl_tvdiff(now,
    span_ms = Curl_tvdiff(now,
                          data->progress.speeder_time[checkindex]);
                          data->progress.speeder_time[checkindex]);
    if(0 == span_ms)
      span_ms=1; /* at least one millisecond MUST have passed */


    /* Calculate the average speed the last 'countindex' seconds */
    /* Calculate the average speed the last 'countindex' seconds */
    data->progress.current_speed =
    data->progress.current_speed =