From 1d0be47ab680db938ac8da1ee65e1de91e198f67 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Thu, 4 Oct 2018 10:24:34 +0200 Subject: progress: Generate valid 'download-progress' traces when the size is unknown. Fixes . Reported by Ricardo Wurmus . * guix/progress.scm (progress-reporter/trace): In 'stop', make sure SIZE is an integer. Previously we'd generate a "@ download-progress" trace with #f for the 'transferred' number when downloading files whose size is not known in advance. --- guix/progress.scm | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) (limited to 'guix/progress.scm') diff --git a/guix/progress.scm b/guix/progress.scm index 3b9ff408cd..f846944952 100644 --- a/guix/progress.scm +++ b/guix/progress.scm @@ -304,12 +304,12 @@ progress reports, write \"build trace\" lines to be processed elsewhere." log-port))) (report (rate-limited report-progress %progress-interval)) (stop (lambda () - (report-progress size) - (display (format #f "@ download-succeeded ~a ~a ~a~%" - file url - (or (and=> (stat file #f) stat:size) - size)) - log-port))))) + (let ((size (or (and=> (stat file #f) stat:size) + size))) + (report-progress size) + (display (format #f "@ download-succeeded ~a ~a ~a~%" + file url size) + log-port)))))) ;; TODO: replace '(@ (guix build utils) dump-port))'. (define* (dump-port* in out -- cgit v1.2.3