Files
openide/java/debugger/impl
Fabien Sanglard fa8a087362 Better check for emulated breakpoint capability
Problem: Emulated Breakpoint (method entry) are not supported on ART
(Android) VM. This is happening because Emulate BreakPoints have a
requirements for the VM to support for canGetBytecodes(OK) and
canGetConstantPool (!OK).

The current test for Emulated Breakpoint support is done at the
beginning of 'createRequestForPreparedClassEmulated'. However this test
generates false negatives. Only if the breakpoint is WATCH_EXIT it will
need access to bytecode() and constant_pool() from JDI.

Solution: Narrowing down the test to only fallback on "normal"
METHOD_ENTY when the breakpoint is indeed a WATCH_EXIT.

Test: Local build, run Android project, create method breakpoint, check
that an Emulated BreakPoint was created.

closes https://github.com/JetBrains/intellij-community/pull/2464

GitOrigin-RevId: 0a97792e18db546872211701a1937547917c33b5
2023-06-16 13:29:26 +00:00
..