You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@karaf.apache.org by ff...@apache.org on 2012/12/11 02:13:16 UTC

svn commit: r1419963 - /karaf/trunk/main/src/main/java/org/apache/karaf/main/StartupListener.java

Author: ffang
Date: Tue Dec 11 01:13:15 2012
New Revision: 1419963

URL: http://svn.apache.org/viewvc?rev=1419963&view=rev
Log:
[KARAF-2052] Progress bar doesn't display properly on 80 char consoles

Modified:
    karaf/trunk/main/src/main/java/org/apache/karaf/main/StartupListener.java

Modified: karaf/trunk/main/src/main/java/org/apache/karaf/main/StartupListener.java
URL: http://svn.apache.org/viewvc/karaf/trunk/main/src/main/java/org/apache/karaf/main/StartupListener.java?rev=1419963&r1=1419962&r2=1419963&view=diff
==============================================================================
--- karaf/trunk/main/src/main/java/org/apache/karaf/main/StartupListener.java (original)
+++ karaf/trunk/main/src/main/java/org/apache/karaf/main/StartupListener.java Tue Dec 11 01:13:15 2012
@@ -87,15 +87,17 @@ class StartupListener implements Framewo
 
     public void showProgressBar(int done, int total) {
         int percent = (done * 100) / total;
+        // progress bar can only have 73 characters so that 80 char wide terminal will display properly
+        int scaledPercent = (int) (73.0 * (percent / 100.0));
         // Make sure we do not go backwards with percentage
         if (percent > currentPercentage) {
             currentPercentage = percent;
             StringBuilder sb = new StringBuilder();
             sb.append(String.format("\r%3d%% [", percent));
-            for (int i = 0; i < 100; i++) {
-                if (i < percent) {
+            for (int i = 0; i < 73; i++) {
+                if (i < scaledPercent) {
                     sb.append('=');
-                } else if (i == percent) {
+                } else if (i == scaledPercent) {
                     sb.append('>');
                 } else {
                     sb.append(' ');
@@ -114,4 +116,4 @@ class StartupListener implements Framewo
         int numActive;
         int numTotal;
     }
-}
\ No newline at end of file
+}