langtools/src/share/classes/com/sun/tools/classfile/ClassTranslator.java
changeset 2978 a72220103e31
parent 727 cb50c1ae7bab
child 5520 86e4b9a9da40
--- a/langtools/src/share/classes/com/sun/tools/classfile/ClassTranslator.java	Tue May 19 11:33:13 2009 -0700
+++ b/langtools/src/share/classes/com/sun/tools/classfile/ClassTranslator.java	Tue May 19 11:43:50 2009 -0700
@@ -95,7 +95,7 @@
         if (cp2 == null) {
             ConstantPool.CPInfo[] pool2 = new ConstantPool.CPInfo[cp.size()];
             boolean eq = true;
-            for (int i = 0; i < cp.size(); i++) {
+            for (int i = 0; i < cp.size(); ) {
                 ConstantPool.CPInfo cpInfo;
                 try {
                     cpInfo = cp.get(i);
@@ -107,11 +107,7 @@
                 pool2[i] = cpInfo2;
                 if (cpInfo.getTag() != cpInfo2.getTag())
                     throw new IllegalStateException();
-                switch (cpInfo.getTag()) {
-                    case ConstantPool.CONSTANT_Double:
-                    case ConstantPool.CONSTANT_Long:
-                        i += 1;
-                }
+                i += cpInfo.size();
             }
 
             if (eq)