Commit Graph

169 Commits

Author SHA1 Message Date
martin
e5f3e33463 LazDebuggerFp: Fix watches evaluation not called, if stack had less than 5 frames. FReqList was not cleared, since "add" happens after "remove" (remove called during create)
git-svn-id: trunk@62304 -
2019-11-27 01:52:41 +00:00
martin
33105a74b6 LazDebuggerFp: use GetParamsAsString from FpDebug
git-svn-id: trunk@62173 -
2019-11-03 17:05:36 +00:00
mattias
f46c547347 lazdebugger: clean up
git-svn-id: trunk@62110 -
2019-10-22 15:10:45 +00:00
martin
93784272ae FpDebug: Eval threads first. Avoid double refresh of other windows.
git-svn-id: trunk@62051 -
2019-10-13 21:52:28 +00:00
martin
e44a64751f LazDebuggerFp: Improve reaction time to user request next-step/run. If Stack/Watches are still in evaluation then stop them.
git-svn-id: trunk@62050 -
2019-10-13 21:52:26 +00:00
martin
bb9f614179 FpDebug: Fix a leak when stopping/reseting the debugger under heavy multithreaded load. (Windows may have queued events, then the next pause may not be the expected ExitProcess, and clean-up is not triggered.
git-svn-id: trunk@62032 -
2019-10-11 12:07:16 +00:00
martin
cbe21ff4f3 FpDebug: implement watching bitpacked array/record
git-svn-id: trunk@62012 -
2019-10-09 20:06:21 +00:00
martin
f6616221d8 FpDebug: Fix crash on hitting just deleted breakpoint (race condition leads to nil object access)
git-svn-id: trunk@62005 -
2019-10-06 22:00:31 +00:00
martin
5ff6c5c0c1 FpDebug: Partial implement WatchPoints.
- No local watches yet. Always global scope.
- Break on Write is the same Read/Write
- Info pop up has no old/new value
- No feedback (in some cases) if watch failed to set

git-svn-id: trunk@61990 -
2019-10-05 11:09:49 +00:00
martin
c545425462 LazDebuggerFp: Refactor getting user selected stack/frame into new method GetCurrentThreadAndStackFrame
git-svn-id: trunk@61988 -
2019-10-05 11:09:45 +00:00
martin
a631e91e53 FpDebug: rename TFpInternalBreakpointBase into TFpDbgBreakpoint / Make other packages use TFpDbgBreakpoint instead of internal class.
git-svn-id: trunk@61987 -
2019-10-05 11:09:44 +00:00
martin
3cb743cac0 LazDebugger: Fix FindContext must run in thread. Fix watches in other stackframes sometimes fail to eval. Broken in r61968 #fa44aa0f0b.
git-svn-id: trunk@61984 -
2019-10-05 11:09:39 +00:00
martin
fa44aa0f0b LazDebuggerFp, FpDebug: Refactor FindContext
git-svn-id: trunk@61968 -
2019-10-03 18:38:11 +00:00
martin
3e1d403bae LazDebuggerFp, FpDebug: Attach and Detach (Windows/Linux)
Attach on Linux does not work for apps started with "run without debugging". (Maybe/Probably because the IDE does a separate waitpid on those, and interferes with the waitpid of the debugger?)

git-svn-id: trunk@61967 -
2019-10-03 18:38:10 +00:00
martin
6591981f5f FpDebug: Fix leak introduced in r61951 #cc3a453334 / missing deref for ValueObject in Locals eval
git-svn-id: trunk@61957 -
2019-10-02 11:48:28 +00:00
martin
cc3a453334 FpDebug: Remove circular cache for ValueObject.
git-svn-id: trunk@61951 -
2019-09-29 21:43:51 +00:00
martin
495c172050 FpDebug: Remove LastMember for structures (part of circle ref with StructureValue)
git-svn-id: trunk@61950 -
2019-09-29 21:43:49 +00:00
martin
2ec08f8a9c FpDebug: rename TDbgInfo.FindSympol into FindProcSymbol
git-svn-id: trunk@61936 -
2019-09-28 19:08:13 +00:00
martin
ac8e91f785 LazDebuggerFp: Enable TypedAddress
git-svn-id: trunk@61919 -
2019-09-24 23:36:39 +00:00
martin
ce36789c36 LazDebuggerFp: Improve OnIdle handling
git-svn-id: trunk@61893 -
2019-09-16 23:14:19 +00:00
martin
736f8b32fa LazDebuggerFp: fix debugln
git-svn-id: trunk@61837 -
2019-09-08 19:03:06 +00:00
martin
3254177a33 LazDebuggerFp: check correct thread (only top frame) when getting register values
git-svn-id: trunk@61836 -
2019-09-08 19:03:05 +00:00
martin
d9731de769 FpDebug, LazDebuggerFp: More debugln for Breakpoints
git-svn-id: trunk@61817 -
2019-09-05 20:05:55 +00:00
martin
2fa22bf873 LazDebuggerFp: Fix crash when starting debugger with F7/F8 - Disable them, as they currently do not stop at program entry
git-svn-id: trunk@61815 -
2019-09-05 20:05:51 +00:00
martin
e06e1746df LazDebuggerFp: fix uninitialized var
git-svn-id: trunk@61809 -
2019-09-02 14:19:04 +00:00
martin
4e7c7e1842 LazDebuggerFp: correctly eval watches for history snapshots
git-svn-id: trunk@61807 -
2019-09-02 00:44:53 +00:00
martin
4db4bc458b LazDebuggerFp: fix context (crash) during stack eval
git-svn-id: trunk@61804 -
2019-09-02 00:44:49 +00:00
martin
c66f2fd121 LazDebuggerFp: Clean up
git-svn-id: trunk@61745 -
2019-08-22 21:33:22 +00:00
martin
5a7c9f1487 FpDebug: Refactor class names for TFpDbgValue and TFpDbgSymbol descendants.
git-svn-id: trunk@61722 -
2019-08-18 13:43:45 +00:00
martin
3ed45630a0 LazDebuggerFp: slightly faster watch eval.
git-svn-id: trunk@61517 -
2019-07-03 18:26:26 +00:00
martin
8874afbe6a FpDebug/LazDebuggerFp: Refactor logging, use LazLogger for all logging.
git-svn-id: trunk@61427 -
2019-06-19 15:26:22 +00:00
martin
209dc36684 LazDebuggerFp: Fix range-check / overflow with bad data.
git-svn-id: trunk@60707 -
2019-03-17 02:49:05 +00:00
martin
f4f3307ca9 LazDebuggerFp: Prevent crash when watches are freed, after debugger was destroyed
git-svn-id: trunk@60692 -
2019-03-16 02:46:15 +00:00
martin
616069b6b2 LazDebuggerFp: Fix context for evaluate on none existing stackframe
git-svn-id: trunk@60357 -
2019-02-07 17:39:06 +00:00
martin
e838d16727 LazDebuggerFp: Fix context for evaluate on higher stack frames (count vs index)
git-svn-id: trunk@60356 -
2019-02-07 17:06:10 +00:00
martin
dac68e42e2 FpDebug, LazDebuggerFp: fix last frame in stack list / allow evaluate more frames
git-svn-id: trunk@60335 -
2019-02-04 18:26:11 +00:00
martin
af994a75c8 LazDebuggerFp: use dsInternalPause to set/unset breakpoints
git-svn-id: trunk@60035 -
2019-01-08 18:42:59 +00:00
martin
e74b00e9dc LazDebuggerFp: Fix, showing pchar and string version for index access of string/pchar
git-svn-id: trunk@59862 -
2018-12-19 01:42:45 +00:00
martin
4315025999 LazDebuggerFp: Implement OnIdle, make debug history being recorded.
git-svn-id: trunk@59818 -
2018-12-13 17:09:27 +00:00
martin
6c33c7fc13 LazDebuggerFp: Implement conditional breakpoints / fix nil access
git-svn-id: trunk@59815 -
2018-12-13 14:27:51 +00:00
martin
3cffd5e3da LazDebuggerFp: Implement conditional breakpoints
git-svn-id: trunk@59814 -
2018-12-13 12:56:18 +00:00
martin
f4544c2ac8 LazDebuggerFp: Prevent crash, if debugger instance is destroyed before logging is handled.
git-svn-id: trunk@59787 -
2018-12-10 23:26:09 +00:00
martin
801ce13eb6 LazDebuggerFp: fix getting exception class/msg for 64bit targets
git-svn-id: trunk@59742 -
2018-12-06 20:20:23 +00:00
martin
d5cfafb571 LazDebuggerFp: linux, fix running process-access in debug-thread (needed when accessing outer vars for nested procs, for which stack has not yet been evaluated)
git-svn-id: trunk@59696 -
2018-11-29 14:52:08 +00:00
martin
0d4fa259a4 LazDebuggerFp: deal with fpc info for nested procs variable scopes.
git-svn-id: trunk@59656 -
2018-11-25 20:01:36 +00:00
martin
895fe14aed LazDebuggerFp: handle "ignored exceptions" list
git-svn-id: trunk@59655 -
2018-11-25 20:00:38 +00:00
martin
d241c5e016 LazDebuggerFp: more nil handling safety
git-svn-id: trunk@59608 -
2018-11-19 18:07:28 +00:00
martin
96fdbb9d93 LazDebuggerFp: Fix crash, if string read from debugged app is nil / debugged app exception info
git-svn-id: trunk@59607 -
2018-11-19 17:48:12 +00:00
martin
2cace808be LazDebuggerFp, FpDebug: (windows only) implemented switching threads while paused. (On Linux only one thread is currently paused, so switching is not possible)
git-svn-id: trunk@59571 -
2018-11-17 14:16:09 +00:00
martin
37e86f2e05 LazDebuggerFp: fix missing result for dcPause
git-svn-id: trunk@59568 -
2018-11-17 12:35:51 +00:00