Commit Graph

162 Commits

Author SHA1 Message Date
martin
98aa637a42 FpDebug: debugln
git-svn-id: trunk@62406 -
2019-12-16 23:22:53 +00:00
martin
9a11939004 FpDebug: Fix range check (addresses in target are allowed to overflow)
git-svn-id: trunk@62386 -
2019-12-14 15:56:26 +00:00
martin
489625b121 FpDebug, LazDebuggerFp: Implement step to except/finally / step over ignored exception
git-svn-id: trunk@62344 -
2019-12-08 00:18:17 +00:00
martin
c1611124b4 FpDebug: Added methods to add disabled breakpoints, and modify existing
git-svn-id: trunk@62343 -
2019-12-08 00:18:15 +00:00
martin
b34bc4a730 FpDebug, LazDebuggerFp: Implemented OnLibrary(Un)LoadedEvent / Show in event log
git-svn-id: trunk@62340 -
2019-12-08 00:18:10 +00:00
martin
9cd1e928d5 FpDebug, LazDebuggerFp: Use FindProc instead of FindContext to get SymbolInfo entries
git-svn-id: trunk@62339 -
2019-12-08 00:18:09 +00:00
martin
2dd36b3cd8 FpDebug: FPC sets some lines to line-num=0 => map them to the next avail line. This will at least be somewhere around the correct location.
git-svn-id: trunk@62337 -
2019-12-08 00:18:05 +00:00
martin
f64a5f7d3b FpDebug: Rewrite of Step-In/Over/Out. Now handle (end-)stepping after leaving current procedure (i.e step to the outer line end, according to "In" or "Over")
git-svn-id: trunk@62336 -
2019-12-08 00:18:03 +00:00
martin
751d6dd60d FpDebug: Start basic detection of frame-base
git-svn-id: trunk@62174 -
2019-11-03 17:05:38 +00:00
martin
5f2f41dd34 FpDebug: Allow to create contexct from known ProcSym / Updated TDbgCallstackEntry.GetParamsAsString / Avoid double look-up of proc-symbol
git-svn-id: trunk@62172 -
2019-11-03 17:05:35 +00:00
martin
1739434138 FpDebug: fix range check error in FindProcSymbol. (int64 vs qword).
git-svn-id: trunk@62138 -
2019-10-28 17:07:04 +00:00
martin
ec3e5b6a07 FpDebug: fix crash on nil-deref.
- On Windows FCurrentThread is nil during the ExitProcess event.
- On all platforms CreateThread can (in theory) return nil.

git-svn-id: trunk@62034 -
2019-10-11 12:07:19 +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
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
9b5b0c8db2 FpDebug: Check stackframe for FindContext in range / out of index
git-svn-id: trunk@61985 -
2019-10-05 11:09:40 +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
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
9b5a4935a0 FpDebug: fix wrong type for bound-symbol fields / Enable TypedAddress
git-svn-id: trunk@61918 -
2019-09-24 23:36:37 +00:00
martin
4137324e48 FpDebug: Check result of ReadThreadState. Do not use invalid data (on windows this lead to nil deref crash)
git-svn-id: trunk@61891 -
2019-09-16 21:49:25 +00:00
martin
151412f007 FpDebug: improve stepping.
Refactor: Capture initial data before DoContinue
Fix/Improve: Only check and continue the thread that is stepped / Make HiddenBreakpoint hidden from the rest of the controller.

git-svn-id: trunk@61873 -
2019-09-14 14:27:41 +00:00
martin
cae3f56d05 FpDebug: fixed nil pointer crash when clearing breakpoints, after the debugged app exited.
git-svn-id: trunk@61865 -
2019-09-12 15:33:11 +00:00
martin
304f6e7be9 FpDebug: Fix requesting process to pause, broken in r61840 #ece9967721
git-svn-id: trunk@61845 -
2019-09-08 23:33:01 +00:00
martin
ece9967721 FpDebug: Keep the loop running, if internal stepping causes deBreakPoint without actually hitting a breakpoint. Required because now there can be several such singlesteps in one iteration of the loop.
git-svn-id: trunk@61840 -
2019-09-08 19:03:11 +00:00
martin
876682fc9d FpDebug: Handle hitting breakpoints, that have been removed while the event was waiting. Still need to re-execute the asm instruction that was hidden by int3
git-svn-id: trunk@61839 -
2019-09-08 19:03:09 +00:00
martin
addf952338 FpDebug: Less debugln noise when checking if break exists
git-svn-id: trunk@61818 -
2019-09-05 20:05:57 +00:00
martin
d9731de769 FpDebug, LazDebuggerFp: More debugln for Breakpoints
git-svn-id: trunk@61817 -
2019-09-05 20:05:55 +00:00
martin
c86c8d65e6 FpDebug: reduce logged errors for messages that are expected (cannot write to terminated process)
git-svn-id: trunk@61816 -
2019-09-05 20:05:54 +00:00
martin
00417e251e FpDebug: Fix stackframe evaluation / In some cases (if stack win was closed, when brk-point hit) only the top frame was displayed.
git-svn-id: trunk@61806 -
2019-09-02 00:44:52 +00:00
martin
9fedf06c5f FpDebug: fix context (crash) during stack eval / currently unused code
git-svn-id: trunk@61805 -
2019-09-02 00:44:50 +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
8874afbe6a FpDebug/LazDebuggerFp: Refactor logging, use LazLogger for all logging.
git-svn-id: trunk@61427 -
2019-06-19 15:26:22 +00:00
martin
a2744edd0a FpDebug: clean up
git-svn-id: trunk@61420 -
2019-06-18 18:39:24 +00:00
martin
2fe7c631b4 FpDebug: Fix context for register on higher/non-existing stack frames (count vs index) / refactor
git-svn-id: trunk@60358 -
2019-02-07 17:40:20 +00:00
mattias
68aeaf0590 fpdebug: clean up
git-svn-id: trunk@60347 -
2019-02-06 08:19:51 +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
6f10746551 FpDebug: Fix breakpoint not applied / left over old code
git-svn-id: trunk@60213 -
2019-01-25 00:42:50 +00:00
martin
88aca89865 FpDebug: More refactor internal breakpoints. More control to OS classes. Improve stopping other threads on Linux
git-svn-id: trunk@60160 -
2019-01-23 21:28:44 +00:00
martin
2bf19a2135 FpDebug: fix removing internal breakpoints / fix crash on remove
git-svn-id: trunk@60152 -
2019-01-23 00:49:43 +00:00
martin
a48c9c1b69 FpDebug: More refactor internal breakpoints. Move detection for ResetInstructionPointerAfterBreakpoint into OS classes.
git-svn-id: trunk@60142 -
2019-01-22 02:11:44 +00:00
martin
ba83c710cd FpDebug: Start refactor internal breakpoints. Prepare to allow several breakpoints set at the same address.
git-svn-id: trunk@60123 -
2019-01-20 19:09:46 +00:00
martin
95d1609a43 FpDebug: add enumerator for threadmap
git-svn-id: trunk@60095 -
2019-01-16 22:32:49 +00:00
martin
7ccec4c206 FpDebug: Callstack, adjust to show the current calling line, instead of the line after it. Issue #0034753
git-svn-id: trunk@59978 -
2019-01-03 00:12:02 +00:00
martin
88767bcd81 LazDebuggerFp: Fix, Step-over did not stop, if an "auto-continue/none-break" breakpoint was encountered at the end of the step. (the auto continue took priority over the end-of-step)
git-svn-id: trunk@59816 -
2018-12-13 15:16:32 +00:00
martin
bba050e333 FpDebug: Disable assert, until fixed
git-svn-id: trunk@59727 -
2018-12-04 17:12:05 +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
c54639d227 FpDebug: Allow to specify poNewConsole on windows
git-svn-id: trunk@59488 -
2018-11-07 23:13:11 +00:00
martin
54445f8381 LazDebuggerFP: fix (stackframe) register for 64bit app / enable watches,locals on selected stackframe
git-svn-id: trunk@58200 -
2018-06-09 12:35:00 +00:00