[ http://issues.apache.org/jira/browse/XMLBEANS-206?page=all ]
Lawrence Jones reassigned XMLBEANS-206: --------------------------------------- Assign To: Rajiv Bala Fixed with checkin 327209. Thanks for the fix Dennis. Assigning to Rajiv for test. > Wrong method finding in getMethod() of InterfaceExtensionImpl > ------------------------------------------------------------- > > Key: XMLBEANS-206 > URL: http://issues.apache.org/jira/browse/XMLBEANS-206 > Project: XMLBeans > Type: Bug > Components: Binding > Versions: Version 2 > Environment: Doesn't relate to platform. > Reporter: Denis Anisimov > Assignee: Rajiv Bala > > Wrong implementation of getMethod() in InterfaceExtensionImpl class could > lead to ArrayIndexOutOfBoundsException. > Old implementation : > static JMethod getMethod(JClass cls, String name, JClass[] paramTypes) > { > JMethod[] methods = cls.getMethods(); > for (int i = 0; i < methods.length; i++) > { > JMethod method = methods[i]; > if (!name.equals(method.getSimpleName())) > continue; > JParameter[] mParams = method.getParameters(); > for (int j = 0; j < mParams.length; j++) > { > JParameter mParam = mParams[j]; > if (!mParam.getType().equals(paramTypes[j])) > continue; > } > return method; > } > return null; > } > Correct impl-tion : > static JMethod getMethod(JClass cls, String name, JClass[] paramTypes) > { > JMethod[] methods = cls.getMethods(); > for (int i = 0; i < methods.length; i++) > { > JMethod method = methods[i]; > if (!name.equals(method.getSimpleName())) > continue; > JParameter[] mParams = method.getParameters(); > // here was bug in possibe ArrayIndexOutOfBoundsException. > // because methods could have same names but different > // number of parameters > if ( mParams.length != paramTypes.length ){ > continue; > } > > for (int j = 0; j < mParams.length; j++) > { > JParameter mParam = mParams[j]; > if (!mParam.getType().equals(paramTypes[j])) > continue; > } > return method; > } > return null; > } -- This message is automatically generated by JIRA. - If you think it was sent incorrectly contact one of the administrators: http://issues.apache.org/jira/secure/Administrators.jspa - For more information on JIRA, see: http://www.atlassian.com/software/jira --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]