ssh: Fix progress bar crash when there are zero items to send.

* guix/ssh.scm (notify-transfer-progress): Do nothing when TOTAL is
zero.
This commit is contained in:
Ludovic Courtès 2020-09-02 23:58:34 +02:00
parent de83660dd3
commit 44c6e6f590
No known key found for this signature in database
GPG Key ID: 090B11993D9AEBB5

View File

@ -441,14 +441,15 @@ Use SIZES to determine the size of ITEM, which is about to be sent."
(progress-bar % (- (max (current-terminal-columns) 5) 5)))
(force-output port))
(let ((% (* 100. (/ sent total))))
(match (vhash-assoc item sizes)
(#f
(display-bar %)
(values port sizes total sent))
((_ . size)
(display-bar %)
(values port sizes total (+ sent size))))))
(unless (zero? total)
(let ((% (* 100. (/ sent total))))
(match (vhash-assoc item sizes)
(#f
(display-bar %)
(values port sizes total sent))
((_ . size)
(display-bar %)
(values port sizes total (+ sent size)))))))
(define (notify-transfer-completion port . args)
"Notify the user that the transfer has completed."