martin
3e545f0813
LazDebuggerFp: change default for NextOnlyStopOnStartLine. Now set to "False". Only affects "Step out"
...
git-svn-id: trunk@63076 -
2020-04-25 13:23:30 +00:00
martin
e0ebb5cb56
FpDebug: allow changing current thread on Linux
...
git-svn-id: trunk@63068 -
2020-04-24 20:08:22 +00:00
martin
bb08a7b8cb
FpDebug: do not ExecuteInThread while running / prevent IDE hanging
...
git-svn-id: trunk@63066 -
2020-04-24 20:08:19 +00:00
martin
1cc3be175c
FpDebug: prevent debugger thread from crashing / prevent IDE hang, waiting for crashed thread.
...
git-svn-id: trunk@63064 -
2020-04-24 20:08:16 +00:00
martin
f2d5fd797b
FpDebug: Refactor storing/comparing stack-pointer/frame for step-out detection. Allow different architectures to provide sub-classes
...
git-svn-id: trunk@63060 -
2020-04-24 20:08:09 +00:00
martin
667546f298
FpDebugger (all): prevent nil deref, for empty watch (auto instance class)
...
git-svn-id: trunk@62811 -
2020-03-25 15:51:09 +00:00
martin
62facbb44d
Renamed TDbgDisassembler class and all related classes to avoid name clashes with FpDebugDebugger classes.
...
Patch/Contributed by ccrause
git-svn-id: trunk@62757 -
2020-03-12 14:21:17 +00:00
martin
121b9389ee
Naive implementation of reverse disassembling
...
Patch/Contributed by ccrause
git-svn-id: trunk@62754 -
2020-03-12 14:21:12 +00:00
martin
6d6903e246
Introduce minimum and maximum instruction size properties to TDbgDisassembler. This is useful for buffering calculations, also in reverse disassembling. Preread required memory before disassembling to reduce impact of remote target access
...
Patch/Contributed by ccrause
git-svn-id: trunk@62753 -
2020-03-12 14:21:10 +00:00
martin
b014fcdeeb
Let the TProcess call decide, if calls must be made in the correct thread (debugger-thread). Linux/trace only allows the dbg thread access.
...
git-svn-id: trunk@62752 -
2020-03-12 14:21:08 +00:00
martin
676c17f1cf
FpDebug: Refactor disassembler into class
...
git-svn-id: trunk@62746 -
2020-03-12 14:09:14 +00:00
martin
834a18b043
FpDebug: Fix Command.DoContinue. Do not read DbgThread.GetInstrPtr if the event is caused by another thread. On Linux the none-event thread (belonging to the command) may not be paused/readable.
...
git-svn-id: trunk@62495 -
2020-01-04 19:44:01 +00:00
martin
6cc8e56bdc
FpDebug: Fixed IDE hang on linux. ExecuteInDebugThread can be called recursive (e.g., by MemReader)
...
git-svn-id: trunk@62491 -
2020-01-04 18:23:06 +00:00
martin
8bdb3bfd79
FpDebug: fix mem leak / cross debug to win32 causes 2 load events for ntdll
...
git-svn-id: trunk@62480 -
2020-01-04 03:00:09 +00:00
martin
98aa637a42
FpDebug: debugln
...
git-svn-id: trunk@62406 -
2019-12-16 23:22:53 +00:00
martin
ce0adcee42
LazDebuggerFp: fix compile with 3.3.1
...
git-svn-id: trunk@62350 -
2019-12-08 03:24:37 +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
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
b206664b05
LazDebuggerFp: Fixed/Workaround an endless loop with auto-continue breakpoints. The new async-stack-eval was not taken into account.
...
git-svn-id: trunk@62319 -
2019-12-03 01:55:29 +00:00
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