if resp.StatusCode != http.StatusOK {
log.Fatalln("status code:", resp.Status)
}
+ var sizeExpected uint64
+ if *size == 0 {
+ if resp.ContentLength > 0 {
+ sizeExpected = uint64(resp.ContentLength)
+ }
+ } else {
+ sizeExpected = uint64(*size)
+ }
var w io.Writer
if *progress {
- bar := Progress{w: os.Stdout, now: time.Now(), total: uint64(*size)}
+ bar := Progress{w: os.Stdout, now: time.Now(), total: sizeExpected}
bar.next = bar.now.Add(ProgressPeriod)
w = &bar
} else {