Re: Assertion fails when calling java.lang.reflect.Method.invoke()
David Bélanger <[email protected]> Mon, 21 Feb 2005 01:35:01 -0500
| Newsgroups | gmane.comp.java.vm.sablevm.devel |
|---|---|
| Message-ID | <[email protected]> |
On Sun, Feb 20, 2005 at 06:29:16PM -0500, David Bélanger wrote: > On Fri, Feb 18, 2005 at 11:55:51AM -0500, [email protected] wrote: > > Hi all, > > > > While developing a Java application that starts another Java application, I met a strange > > SableVM 1.1.9 behaviour. An assertion fails when I put wrong parameters into > > Method.invoke() call. The error in the StartAppHelper.run() function: > > mainMethod.invoke(null, this.parameters); // parameters is String[] > > should be > > mainMethod.invoke(null, this.parameterList); // parameterList is Object[] > > > > This happens only when enabling SableVM debugging features (SableVM 1.1.9 compiled with > > options --enable-debugging-features --disable-errors-on-warnings). > > > > Here is the command to compile it: > > jikes -g -bootclasspath ~{...}/sablevm/sablevm-classpath/ Bridge.java > > > > Here is the command to launch it: > > /svm119/bin/sablevm -Y --classpath={...} -p > > java.library.path={...}--property=sablevm.bridge.start --property=java.compiler=NONE Bridge > > > > The output with the right code or erroneous code without debugging features: > > >JAVA : get the property > > >start org.eclipseguide.hello.HelloWorld > > >JAVA : helper creation > > >JAVA : helper setup > > >JAVA : helper start > > >Hello, World! greetings from Sablevm > > >Hello, World! greetings from Sablevm > > >Hello, World! greetings from Sablevm > > > > The output with the erroneous code and debugging features: > > >JAVA : get the property > > >start org.eclipseguide.hello.HelloWorld > > >JAVA : helper creation > > >JAVA : helper setup > > >JAVA : helper start > > >sablevm: util1.c:318: _svmf_get_reference_array_element: Assertion `indx >= 0 && indx < > > array->size' failed. > > >Abandon > > Bug confirmed on SableVM/staging. > Will look into it later today or tomorrow. > Fixed in SableVM/staging, will get into SableVM 1.1.10. Method.invoke was not checking number and types of arguments. Thanks, David --- David Bélanger Web page: http://www.cs.mcgill.ca/~dbelan2/ Public key: http://www.cs.mcgill.ca/~dbelan2/public_key.txt