Commit Graph

311 Commits

Author SHA1 Message Date
Martin
88e9c521d7 FpDebug: fix watch-properties log-eval / log-stack to event window. 2022-09-14 18:15:30 +02:00
Martin
1024191ee5 Debugger: Fix breakpoint with "HitCount" do not eval stack/watches until hit-count is reached (for FpDebug backend) 2022-09-14 17:03:45 +02:00
Martin
069baa2497 Debugger: Run only current thread for watch function eval. Add option to run all threads. 2022-09-11 15:16:18 +02:00
Martin
45b69e8d9d Debugger: Allow to suspend/resume individual threads / only with FpDebug, only while paused - for the next run/step. 2022-09-11 03:28:53 +02:00
Martin
cbf0b6b0d6 Debugger: make ThreadState an enum 2022-09-11 02:25:23 +02:00
Martin
712b3e161d FpDebug: Fixes for watch-function-eval: allow function to ignore breakpoints set by the user. 2022-09-10 21:36:09 +02:00
Martin
26b56b74f9 FpDebug: Ensure update notification is sent after new stakc frames have been added. 2022-09-10 18:01:37 +02:00
Martin
7038201fcd LazDebuggerFp: Fix sporadic "interrupts" (callstack updates) while stepping (before reaching step target) 2022-09-07 17:09:55 +02:00
Martin
116b22ed72 FpDebug: Introduce "Intrinsics functions" for watches. Add "length()" for string (dwarf-3) and array 2022-09-07 04:36:34 +02:00
Martin
deb959022e LazDebuggerFp: Additional check to ensure full count is set correctly. 2022-09-07 04:36:33 +02:00
Martin
88ad421ae1 LazDebuggerFp: Add nil check in Memreader 2022-09-06 21:28:13 +02:00
Martin
7347d41a12 Debugger: fix crash introduced in "LazDebuggerFp: improve error handling" 2022-08-31 15:33:48 +02:00
Martin
552fd1dce8 LazDebuggerFp: improve error handling 2022-08-31 02:52:34 +02:00
Martin
d49b8782d7 FpDebugger: fix clear current command after SigSegV before pause (don't conflict with func-eval) 2022-08-23 22:44:59 +02:00
Martin
1c87d53199 Debugger: implement reading class.unitname from RTTI 2022-08-05 02:45:01 +02:00
Martin
6f99f0fe16 Debugger: Configuration for value converter 2022-08-05 02:44:28 +02:00
Martin
8a0a21a7bc LazDebuggFp,FpDebug: fix racing conditions
- while TDbgController.SendEvents runs in the main thread, the work-thread may run TDbgControllerCallRoutineCmd
 - TDbgControllerCallRoutineCmd may run, while the main thread attempts to set the next command
 - CallStack code was from before the WorkQueue was introduced. It needs a different approach. (without attempting to start a new worker)
2022-07-27 01:17:35 +02:00
Pascal Riekenberg
2bc0a9b371 Debugger: added support for TThread.NameThreadForDebugging 2022-06-28 07:35:40 +02:00
Martin
dd89fc14e1 LazDebuggerFp: fixed crash in callstack / dangling pointer 2022-06-23 17:22:23 +02:00
Martin
131d1062df Debugger: allow calling SysVarToLStr for variants (via user defined type-names) 2022-06-23 13:54:18 +02:00
Martin
99495ba51a FpDebugDebugger: fix retrieving stack without limit (fix copy stack to clipboard) 2022-06-04 23:06:11 +02:00
Martin
8d3d08ae4c Debugger: Moved dsState to new unit 2022-03-24 00:39:03 +01:00
Martin
4f8efdd21f FpDebug: fix warnings. 2022-03-24 00:39:03 +01:00
Martin
0e6769ac99 FpDebug, LazDebuggerFp: Implement tracking modified CPU registers (top stack-frame only) 2022-02-25 20:25:01 +01:00
Martin
d38a268f3d FpDebug: Win64, Fix "Run (F9)" incorrectly triggered watch/stack updates while the app was running.
Similar to the Win32 fix at a92db946ec
2022-02-22 01:01:40 +01:00
Martin
dce19de110 FpDebug: Disassembler, start disassembling at begin of current function. Add limit, how far back the begin is allowed to be 2022-02-09 16:42:27 +01:00
Martin
d56774da57 FpDebug: Disassembler, start disassembling at begin of current function, to provide some LinesBefore 2022-02-09 15:39:27 +01:00
Martin
e19b911ab7 FpDebug: Disassembler, fix SrcStatementCount / read-mem, if size is too large 2022-02-09 15:39:27 +01:00
Martin
d7b9ebb6dc FpDebug: Trigger "Changed" after adding dis-assembled ranges. Fixes scrolling down in frontend. 2022-02-09 15:39:27 +01:00
Martin
442f57cf49 LazDebuggerFp: Handle WatchValue in thread 2022-02-01 17:18:20 +01:00
mattias
e8b2d0f821 lazdebuggers: fixed compile linux 2022-01-16 21:48:49 +01:00
Martin
a92db946ec FpDebug: Win32, Fix "Run (F9)" incorrectly triggered watch/stack updates while the app was still running (slowing execution). 2022-01-16 17:06:31 +01:00
Martin
2fa72c8755 LazDebuggerFp: Check callback is assigned. 2022-01-10 14:08:38 +01:00
Martin
d1ac568e96 Debugger: New package LazDebuggerIntf / Replace TWatchValue with TWatchValueIntf 2022-01-10 14:08:37 +01:00
Martin
7f9e1893d2 Rename TDBGEvaluateFlag to TWatcheEvaluateFlag 2022-01-10 14:08:35 +01:00
Martin
6b95ef242c IDE, Debugger-Intf: Hide Monitor property for Callstack, Threads 2022-01-09 01:13:55 +01:00
Martin
2b5f264ede IDE, Debugger-Intf: Clean-up, Move Locals list from DbgIntf to IDE 2022-01-09 01:13:55 +01:00
Martin
717ec4887d IDE, Debugger-Intf: Clean-up, Move Watches list from DbgIntf to IDE 2022-01-09 01:13:55 +01:00
Martin
a1c6e559e1 LazDebuggerFp: Cleanup compiler hints 2021-12-12 21:00:27 +01:00
Martin
6e5c00bb59 LazDebuggerFp: Handle Win32-SEH for step-in/out/over 2021-12-12 21:00:27 +01:00
Martin
4490c1f5a5 LazDebuggerFp: ifdef win64 code 2021-12-12 21:00:22 +01:00
Martin
97c29d9540 LazDebuggerFp: Added safety measures for single stepping (Win64 SEH) 2021-12-12 21:00:22 +01:00
Martin
4c78791096 LazDebuggerFp: catch exceptions in Application.ProcessMessages 2021-12-12 21:00:22 +01:00
Martin
c33019c14b LazDebugger: Fix, ensure DefaultContext is available. Broken in e618b09804 2021-12-10 00:29:26 +01:00
Martin
4548d90a7f LazDebuggerFp: Win64 - catch finally handlers, if the "try" block was entered via breakpoint (not stepped into) *and* left via "exit". 2021-12-09 18:17:57 +01:00
Martin
c90fb08f85 LazDebuggerFp: Win64 -Monitor RtlRestoreContext to catch more unwind cases. 2021-12-09 18:17:56 +01:00
Martin
e618b09804 LazDebuggerFp: Fix Stepping and threads / Ensure loop exits with correct EventType 2021-12-09 18:17:56 +01:00
Martin
54d2e1f159 FpDebug: "Run To" command to find the next line with code. (Step over to, does not yet) 2021-12-07 20:35:49 +01:00
Martin
a691278256 LazDebuggerFp: Fix handling of internal SEH breakpoints. Do not remove breakpoints from outer frames, they may still be needed. 2021-12-07 19:59:30 +01:00
Martin
4f94496f20 LazDebuggerFp: clear flags for set/unset internal breaks 2021-12-07 15:41:29 +01:00