- Make the progressbar only update if it is worth updating.
diff --git a/flex-maven-tools/flex-sdk-converter/retrievers/base/src/main/java/org/apache/flex/utilities/converter/retrievers/utils/ProgressBar.java b/flex-maven-tools/flex-sdk-converter/retrievers/base/src/main/java/org/apache/flex/utilities/converter/retrievers/utils/ProgressBar.java
index c15d26b..1a1b775 100644
--- a/flex-maven-tools/flex-sdk-converter/retrievers/base/src/main/java/org/apache/flex/utilities/converter/retrievers/utils/ProgressBar.java
+++ b/flex-maven-tools/flex-sdk-converter/retrievers/base/src/main/java/org/apache/flex/utilities/converter/retrievers/utils/ProgressBar.java
@@ -24,9 +24,11 @@
 public class ProgressBar {
 
     protected long total;
+    protected int curValue;
 
     public ProgressBar(long total) {
         this.total = total;
+        this.curValue = 0;
         drawOutput(0l);
     }
 
@@ -37,11 +39,14 @@
     protected void drawOutput(long current) {
         final int transferredPercent = (int) Math.round(
                 ((double) current / (double) total) * (double) 100);
-        final int segmentsTransferred = transferredPercent / 2;
-        final int segmentsRest = 50 - segmentsTransferred;
-        System.out.print("\r" + String.format(" %3d", transferredPercent) + "% [" +
-                StringUtils.repeat("=", segmentsTransferred) +
-                ((segmentsRest > 0) ? ">" + StringUtils.repeat(" ", segmentsRest - 1) : "") + "] ");
+        if(transferredPercent != curValue) {
+            curValue = transferredPercent;
+            final int segmentsTransferred = transferredPercent / 2;
+            final int segmentsRest = 50 - segmentsTransferred;
+            System.out.print("\r" + String.format(" %3d", transferredPercent) + "% [" +
+                    StringUtils.repeat("=", segmentsTransferred) +
+                    ((segmentsRest > 0) ? ">" + StringUtils.repeat(" ", segmentsRest - 1) : "") + "] ");
+        }
     }
 
 }