FAQ : Development Environment (Browsers, Inspectors, Performance Tools, etc.) : Q: How can I set a breakpoint in a callback handler?
Q: How can I set a breakpoint in a callback handler?
Problem
When a breakpoint is placed in a callback, the debugger pops up with the buttons grayed out and you are unable to step through code.
Solution
This is working as designed because callouts are not allowed while in a callback. So, to be able to step through the code, you will need to execute the code outside the callback. You can do this by following these steps:
1. Set the breakpoint at the beginning of the method that you want to walk through. For example:

modifyVerifyAreaCode: anObject clientData: clientData callData: callData
2. Test it so the debugger pops up (with the grayed out buttons).
3. Place your cursor in front of the method name in the debugger’s code pane and type self halt;. For example:

self halt; modifyVerifyAreaCode: anObject clientData: clientData callData: callData
4. Swipe that entire line and execute it.
5. Select the (ExHalt) A halt has occurred.==> from the top pane of the debugger.
6. Answer NO when a dialog pops up asking you to save the changes.
7. Click the INTO button on the debugger.
You are now able to step through your code.
Last modified date: 01/12/2021