JVMTI_ERROR_INVALID_SLOT error after using AdviceAdapter.onMethodEnter
Haasip Satang <[email protected]> Wed, 7 Feb 2018 17:10:56 +0100
| Newsgroups | gmane.comp.java.objectweb.asm |
|---|---|
| Message-ID | <CAEz-yfhVcfiWvmw7n1dw6Dpjr=mabhjK-4t9LHKzgyNt7eDOyQ@mail.gmail.com> |
Hi all,
I'm facing the issue that after weaving in a call to a static void method
(no parameters) I get a JVMTI error when trying to get the local variables;
"this" at slot 0 to be specific.
Without the JVMTI agent the code runs fine, so no verify errors, everything
can be interpreted and works as expected. Without the asm instrumentation
the JVMTI agent works as well though. Just if both agents are enabled after
and the one line on method entry is woven in I start getting these
problems.
The generated byte code seems legit to me. The only difference I noticed is
the start value of the local var "this", which is not 0. The slot is ok
though. Could this be a problem?
protected void test() throws java.lang.Exception;
descriptor: ()V
flags: ACC_PROTECTED
Code:
stack=0, locals=1, args_size=1
0: invokestatic #178 // Method
test/Tracer.methodEntry:()V
3: return
LocalVariableTable:
Start Length Slot Name Signature
3 1 0 this Ltest/Test; // <-- is that the
problem? If so how to around this?
LineNumberTable:
line 56: 3
Exceptions:
throws java.lang.Exception
ASM version 5.0.4
Thanks,
Haasip
--
You receive this message as a subscriber of the [email protected] mailing list.
To unsubscribe: mailto:[email protected]
For general help: mailto:[email protected]?subject=help
OW2 mailing lists service home page: http://www.ow2.org/wws