OSDN Git Service

JDWP: fix setting multiple breakpoints in the same method
authorSebastien Hertz <shertz@google.com>
Wed, 17 Dec 2014 15:35:50 +0000 (16:35 +0100)
committerSebastien Hertz <shertz@google.com>
Wed, 17 Dec 2014 16:52:20 +0000 (17:52 +0100)
commitabe93e0098a2648fa286cfea01954737e32c7be9
tree50830ce10a63def20a05e5a5660434472366d454
parentf610c0597e001cb1043aa4074afe25ae79a800e3
JDWP: fix setting multiple breakpoints in the same method

When setting multiple breakpoints in the same method, we were
incorrectly setting the deoptimization kind of all the breakpoints
set after a first breakpoint. This resulted in incorrect
deoptimization/undeoptimization and even an abort. This was caught
by running the debugger with sanity checks enabled with libartd.so.

We now set next breakpoints with the deoptimization kind of the first
existing breakpoint (if any) so we trigger right [un]deoptimization
when adding or removing a breakpoint.

Bug: 18782753
Bug: 18651686
Change-Id: Idf36ede73302fba83a154052bef701bedc8bc726
runtime/debugger.cc