diff options
Diffstat (limited to 'src/com/google/doclava/MethodInfo.java')
-rw-r--r-- | src/com/google/doclava/MethodInfo.java | 11 |
1 files changed, 9 insertions, 2 deletions
diff --git a/src/com/google/doclava/MethodInfo.java b/src/com/google/doclava/MethodInfo.java index f1659f3..cf98d0f 100644 --- a/src/com/google/doclava/MethodInfo.java +++ b/src/com/google/doclava/MethodInfo.java @@ -405,7 +405,8 @@ public class MethodInfo extends MemberInfo implements AbstractMethodInfo, Resolv containingClass(), position())); } } - mThrowsTags = rv.toArray(new ThrowsTagInfo[rv.size()]); + + mThrowsTags = rv.toArray(ThrowsTagInfo.getArray(rv.size())); } return mThrowsTags; } @@ -424,6 +425,12 @@ public class MethodInfo extends MemberInfo implements AbstractMethodInfo, Resolv if (mParamTags == null) { final int N = mParameters.size(); + if (N == 0) { + // Early out for empty case. + mParamTags = ParamTagInfo.EMPTY_ARRAY; + return ParamTagInfo.EMPTY_ARRAY; + } + String[] names = new String[N]; String[] comments = new String[N]; SourcePositionInfo[] positions = new SourcePositionInfo[N]; @@ -464,7 +471,7 @@ public class MethodInfo extends MemberInfo implements AbstractMethodInfo, Resolv } // construct the results, and cache them for next time - mParamTags = new ParamTagInfo[N]; + mParamTags = ParamTagInfo.getArray(N); for (i = 0; i < N; i++) { mParamTags[i] = new ParamTagInfo("@param", "@param", names[i] + " " + comments[i], parent(), |