Editor Tabs: If we don't show file extension very long lower-case names would be...
authorVassiliy.Kudryashov <Vassiliy.Kudryashov@jetbrains.com>
Fri, 30 Jan 2015 21:20:25 +0000 (00:20 +0300)
committerVassiliy.Kudryashov <Vassiliy.Kudryashov@jetbrains.com>
Fri, 30 Jan 2015 21:22:27 +0000 (00:22 +0300)
platform/util/src/com/intellij/openapi/util/text/StringUtil.java
platform/util/testSrc/com/intellij/util/text/StringUtilTest.java

index 47f18254c54766ba476a81a62e929b48e34a2635..58879d062a357e74afb385daae555219d1f86dec 100644 (file)
@@ -3060,8 +3060,8 @@ public class StringUtil extends StringUtilRt {
         break;
       }
     }
-    for (int i = 0; i < words.size(); i++) {
-      String word = words.get(i);
+    for (int i = 0; i < Math.max(1, words.size()); i++) {
+      String word = words.isEmpty() ? "" : words.get(i);
       if (i == index || words.size() == 1) builder.append(toPaste);
       builder.append(word);
     }
index bec2a5ee6ebaf9e24c5ed48dd88e74b720b7a79e..0372fa4abe1a0eb6bb6ded8e46f10eabc5f965b1 100644 (file)
@@ -230,7 +230,7 @@ public class StringUtilTest extends TestCase {
   }
 
   public void testShortened() {
-    String[] names = {"AVeryVeeryLongClassName.java", "com.test.SomeJAVAClassName.java", "strangelowercaseclassname.java", "PrefixPostfix.java", "SomeJAVAClassName.java"};
+    String[] names = {"AVeryVeeryLongClassName.java", "com.test.SomeJAVAClassName.java", "strangelowercaseclassname.java", "PrefixPostfix.java", "SomeJAVAClassName.java", "qwertyuiopasdghjklzxcvbnm1234567890"};
     for (String name : names) {
       for (int i = name.length() + 1; i > 15; i--) {
         String shortened = StringUtil.getShortened(name, i);