]> source.dussan.org Git - javassist.git/commitdiff
fixed JIRA JASSIST-19.
authorchiba <chiba@30ef5769-5b8d-40dd-aea6-55b5d6557bb3>
Mon, 29 May 2006 09:34:15 +0000 (09:34 +0000)
committerchiba <chiba@30ef5769-5b8d-40dd-aea6-55b5d6557bb3>
Mon, 29 May 2006 09:34:15 +0000 (09:34 +0000)
git-svn-id: http://anonsvn.jboss.org/repos/javassist/trunk@276 30ef5769-5b8d-40dd-aea6-55b5d6557bb3

src/main/javassist/CtBehavior.java
src/main/javassist/CtClassType.java

index 5eaa1e588c13070c85c1ec7daf2e028e90451a40..10dda556482bf77855907d64b8aac3732c01bf73 100644 (file)
@@ -166,7 +166,7 @@ public abstract class CtBehavior extends CtMember {
         ParameterAnnotationsAttribute ainfo2 = (ParameterAnnotationsAttribute)
                     mi.getAttribute(ParameterAnnotationsAttribute.visibleTag);  
         return CtClassType.toAnnotationType(getDeclaringClass().getClassPool(),
-                                            ainfo, ainfo2);
+                                            ainfo, ainfo2, mi);
     }
 
     /**
@@ -324,7 +324,7 @@ public abstract class CtBehavior extends CtMember {
      * method returns null.
      *
      * <p>Note that an attribute is a data block specified by
-     * the class file format.
+     * the class file format.  It is not an annotation.
      * See {@link javassist.bytecode.AttributeInfo}.
      *
      * @param name              attribute name
@@ -341,7 +341,7 @@ public abstract class CtBehavior extends CtMember {
      * Adds an attribute. The attribute is saved in the class file.
      *
      * <p>Note that an attribute is a data block specified by
-     * the class file format.
+     * the class file format.  It is not an annotation.
      * See {@link javassist.bytecode.AttributeInfo}.
      *
      * @param name      attribute name
index ed3d9051a4338f89b07159f3088d9356f0a31b64..372e2b227998fa1d7196e4e9a56b4fab0d4a3286 100644 (file)
@@ -447,7 +447,7 @@ class CtClassType extends CtClass {
     }
 
     static Object[][] toAnnotationType(ClassPool cp, ParameterAnnotationsAttribute a1,
-                                       ParameterAnnotationsAttribute a2)
+                                       ParameterAnnotationsAttribute a2, MethodInfo minfo)
         throws ClassNotFoundException
     {
         int numParameters = 0;
@@ -456,7 +456,7 @@ class CtClassType extends CtClass {
         else if (a2 != null)
             numParameters = a2.numParameters();
         else
-           return new Object[0][];
+            numParameters = Descriptor.numOfParameters(minfo.getDescriptor());
 
         Object[][] result = new Object[numParameters][];
         for (int i = 0; i < numParameters; i++) {