Martin
a1a2e3dc28
FpDebug: Remove some asserts that were to strict. The check is done in ReadThreadState. If that has already been done, the functions do not need the requirement.
...
(cherry picked from commit 842abf97c1
)
2021-12-16 09:54:08 +01:00
Martin
7d1223ef96
FpDebug: reduced debugln
...
(cherry picked from commit 9877946d86
)
2021-12-09 18:49:11 +01:00
Martin
cff1d53e40
FpDebug: more asserts for correct thread usage
...
(cherry picked from commit 6fc5c2fcdd
)
2021-10-13 21:50:18 +02:00
Martin
38855733be
FpDebug: Add asserts
...
(cherry picked from commit f47220cc47
)
2021-09-26 02:12:18 +02:00
martin
6661f86edd
Debugger: allow to force lazloggerbase via define
...
git-svn-id: trunk@65227 -
2021-06-14 07:30:45 +00:00
martin
3deb9a41fe
FpDebug: Improve target-mem read/write on Linux / Allow bigger writes
...
git-svn-id: trunk@65225 -
2021-06-14 07:30:37 +00:00
martin
ce0d1a0bc8
LazDebuggerFp, FpDebug: Beta, Allow function calls in watches
...
git-svn-id: trunk@65151 -
2021-05-29 22:51:09 +00:00
joost
fe6e63ed13
FpDebug: Handle signals during function-calls
...
git-svn-id: trunk@65130 -
2021-05-24 22:15:35 +00:00
joost
a32ac8e665
FpDebug: support more function-arguments (x86_64)
...
git-svn-id: trunk@64295 -
2020-12-28 21:33:51 +00:00
martin
a869c43f49
FpDebug: fix threadmap iterator in linux classes. Broken by locked-iterator
...
git-svn-id: trunk@64248 -
2020-12-20 12:38:51 +00:00
martin
3894fe4f86
FpDebug: fix threadmap iterator in linux classes. Broken by locked-iterator
...
git-svn-id: trunk@64247 -
2020-12-20 11:00:58 +00:00
martin
fa5199045e
LazDebuggerFp, FpDebug: Show an error message, if the debugger cannot run the application. Issue #0038167
...
git-svn-id: trunk@64243 -
2020-12-19 22:39:00 +00:00
joost
539c1f9a2b
FpDebug: Renamed TFpDbgHardcodedContext to TFpDbgHardcodedScope
...
git-svn-id: trunk@63899 -
2020-09-20 19:21:53 +00:00
joost
a733105c1c
fpDebug: Ability to do simple function-calls
...
git-svn-id: trunk@63751 -
2020-08-16 10:20:37 +00:00
martin
1b2bf99ec1
FpDebug: refactor showing exception details
...
git-svn-id: trunk@63380 -
2020-06-17 16:52:12 +00:00
martin
a43e155cdb
FpDebug, Debuggers, IDE: Make MemManager easier to access. (via Controller and Instance)
...
git-svn-id: trunk@63358 -
2020-06-16 13:42:42 +00:00
joost
c326b7a628
fpDebug: Fixed endless loop when the debuggee receives an exception-signal. (Calling wstopsig on the signal twice is not the way to go)
...
git-svn-id: trunk@63282 -
2020-06-03 22:08:16 +00:00
martin
c9dea89ec8
FpDebug: Linux, Fix accessing dangling pointer while pausing all threads. (thread removed, after exit-signal)
...
git-svn-id: trunk@63156 -
2020-05-14 15:55:07 +00:00
martin
ee2ae9567c
FpDebug: Do not ignore SigTrap
...
git-svn-id: trunk@63065 -
2020-04-24 20:08:17 +00:00
martin
fb73a010b2
FpDebug: Remember single-step if other threads cause events / deferred events
...
git-svn-id: trunk@63063 -
2020-04-24 20:08:14 +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
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
2ee9c0fe84
FpDebug: New TTargetDescriptor type used to store target specific information. All target specific classes are automatically registered in the respective initialization sections. TDbgController.Run modified to call CheckExecutableAndLoadClasses which loads target info from specified file, loads global disassembler instance and DbgProcess class. Patch/Contributed by ccrause
...
git-svn-id: trunk@62748 -
2020-03-12 14:20:33 +00:00
martin
2e1bd02f2d
FpDebug: Refactor OsDbgClasses => move as field to DbgController and DbgProcess / Prepare for target specific classes
...
git-svn-id: trunk@62747 -
2020-03-12 14:09:16 +00:00
martin
676c17f1cf
FpDebug: Refactor disassembler into class
...
git-svn-id: trunk@62746 -
2020-03-12 14:09:14 +00:00
martin
439be6f619
FpDebug: Linux, removed assert. Condition can occur when process terminates, as threads have not been restarted
...
git-svn-id: trunk@62496 -
2020-01-04 19:44:02 +00:00
martin
764dae935a
FpDebug: Fix leak on Linux / Thread objects were not always released
...
git-svn-id: trunk@62176 -
2019-11-03 17:05:42 +00:00
martin
17dda63638
FpDebug: Refactor freeing thread objects for exited threads
...
git-svn-id: trunk@62175 -
2019-11-03 17:05:40 +00:00
mattias
d0e20a7e06
fpdebug: clean up
...
git-svn-id: trunk@62108 -
2019-10-22 15:10:12 +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
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
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
fc1a436bed
FpDebug: Linux, do not add any SigStop to deferred event list. (It going to be ignored as deInternalContinue anyway)
...
git-svn-id: trunk@61876 -
2019-09-14 14:27:45 +00:00
martin
4be5e94e3e
FpDebug: Linux, do not modify running processes (in case of deInternalContinue, some processes may not be paused)
...
git-svn-id: trunk@61875 -
2019-09-14 14:27:44 +00:00
martin
63087a3084
FpDebug: Linux, ensure a breakpoint is reported once for each thread, if hit at the same time
...
git-svn-id: trunk@61853 -
2019-09-10 18:52:46 +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
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
e6e7bf4355
FpDebug: Linux, improve "Stop all" loop
...
git-svn-id: trunk@61833 -
2019-09-08 18:52:41 +00:00
martin
595f8b9f3e
FpDebug: Linux, refactor signal handling for signals that need to be postponed. Need to collect signals with no existing thread yet, as they will create that thread.
...
git-svn-id: trunk@61832 -
2019-09-08 18:52:39 +00:00
martin
aa85ec85ed
FpDebug: Linux, removed unused code
...
git-svn-id: trunk@61831 -
2019-09-08 18:52:38 +00:00
martin
1ab353e555
FpDebug: Linux, reduce the amount of calls to temp-remove/restore breakpoints
...
git-svn-id: trunk@61830 -
2019-09-08 18:52:36 +00:00
martin
85a8100c39
FpDebug: Linux, fix for temp-removed breakpoints were not always restored (if another thread had pending events, writing the breakpoint in WaitForEvent would fail, due to thread running / signal not yet collected)
...
git-svn-id: trunk@61829 -
2019-09-08 18:52:35 +00:00
martin
999d567e45
FpDebug: debugln for Linux
...
git-svn-id: trunk@61828 -
2019-09-08 18:52:33 +00:00
martin
9defda8b5c
FpDebug: Linux, prevent crash on nil deref
...
git-svn-id: trunk@61819 -
2019-09-05 20:05:58 +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
cfed0db10f
FpDebug: More refactor internal breakpoints. Improve stopping other threads on Linux
...
git-svn-id: trunk@60214 -
2019-01-25 00:44:38 +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
861615d32d
FpDebug: Linux, remove threads when they exit
...
git-svn-id: trunk@60153 -
2019-01-23 01:17:38 +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