src/share/classes/com/sun/tools/classfile/ExtendedAnnotation.java

changeset 484
732510cc3538
parent 478
0eaf89e08564
child 554
9d9f26857129
     1.1 --- a/src/share/classes/com/sun/tools/classfile/ExtendedAnnotation.java	Fri Jan 29 16:54:52 2010 -0800
     1.2 +++ b/src/share/classes/com/sun/tools/classfile/ExtendedAnnotation.java	Mon Feb 01 17:05:35 2010 -0800
     1.3 @@ -123,11 +123,14 @@
     1.4           // Class extends and implements clauses
     1.5          case CLASS_EXTENDS:
     1.6          case CLASS_EXTENDS_GENERIC_OR_ARRAY:
     1.7 -            position.type_index = cr.readUnsignedByte();
     1.8 +            int in = cr.readUnsignedShort();
     1.9 +            if (in == 0xFFFF)
    1.10 +                in = -1;
    1.11 +            position.type_index = in;
    1.12              break;
    1.13          // throws
    1.14          case THROWS:
    1.15 -            position.type_index = cr.readUnsignedByte();
    1.16 +            position.type_index = cr.readUnsignedShort();
    1.17              break;
    1.18          case CLASS_LITERAL:
    1.19          case CLASS_LITERAL_GENERIC_OR_ARRAY:
    1.20 @@ -213,11 +216,11 @@
    1.21           // Class extends and implements clauses
    1.22          case CLASS_EXTENDS:
    1.23          case CLASS_EXTENDS_GENERIC_OR_ARRAY:
    1.24 -            n += 1; // type_index
    1.25 +            n += 2; // type_index
    1.26              break;
    1.27          // throws
    1.28          case THROWS:
    1.29 -            n += 1; // type_index
    1.30 +            n += 2; // type_index
    1.31              break;
    1.32          case CLASS_LITERAL:
    1.33          case CLASS_LITERAL_GENERIC_OR_ARRAY:

mercurial