about summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--editors/code/src/net.ts16
1 files changed, 9 insertions, 7 deletions
diff --git a/editors/code/src/net.ts b/editors/code/src/net.ts
index 1ab21e7262d..3e50d352c90 100644
--- a/editors/code/src/net.ts
+++ b/editors/code/src/net.ts
@@ -99,13 +99,15 @@ export async function download(opts: DownloadOpts) {
         async (progress, _cancellationToken) => {
             let lastPercentage = 0;
             await downloadFile(opts.url, tempFile, opts.mode, !!opts.gunzip, (readBytes, totalBytes) => {
-                const newPercentage = (readBytes / totalBytes) * 100;
-                progress.report({
-                    message: newPercentage.toFixed(0) + "%",
-                    increment: newPercentage - lastPercentage
-                });
-
-                lastPercentage = newPercentage;
+                const newPercentage = Math.round((readBytes / totalBytes) * 100);
+                if (newPercentage !== lastPercentage) {
+                    progress.report({
+                        message: `${newPercentage.toFixed(0)}%`,
+                        increment: newPercentage - lastPercentage
+                    });
+
+                    lastPercentage = newPercentage;
+                }
             });
         }
     );