mirror of
https://gitlab.com/freepascal.org/lazarus/lazarus.git
synced 2025-08-14 06:39:12 +02:00
FpDebug: Linux, do not modify running processes (in case of deInternalContinue, some processes may not be paused)
git-svn-id: trunk@61875 -
This commit is contained in:
parent
c7fae55176
commit
4be5e94e3e
@ -1040,7 +1040,8 @@ begin
|
|||||||
exit;
|
exit;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
AThread.NextIsSingleStep:=SingleStep;
|
if TDbgLinuxThread(AThread).FIsPaused then // in case of deInternal, it may not be paused and can be ignored
|
||||||
|
AThread.NextIsSingleStep:=SingleStep;
|
||||||
|
|
||||||
// check other threads if they need a singlestep
|
// check other threads if they need a singlestep
|
||||||
for TDbgThread(ThreadToContinue) in FThreadMap do
|
for TDbgThread(ThreadToContinue) in FThreadMap do
|
||||||
@ -1077,6 +1078,7 @@ begin
|
|||||||
end;
|
end;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
|
if TDbgLinuxThread(AThread).FIsPaused then // in case of deInternal, it may not be paused and can be ignored
|
||||||
if HasInsertedBreakInstructionAtLocation(AThread.GetInstructionPointerRegisterValue) then begin
|
if HasInsertedBreakInstructionAtLocation(AThread.GetInstructionPointerRegisterValue) then begin
|
||||||
TempRemoveBreakInstructionCode(AThread.GetInstructionPointerRegisterValue);
|
TempRemoveBreakInstructionCode(AThread.GetInstructionPointerRegisterValue);
|
||||||
TDbgLinuxThread(AThread).FIsSteppingBreakPoint := True;
|
TDbgLinuxThread(AThread).FIsSteppingBreakPoint := True;
|
||||||
@ -1108,6 +1110,7 @@ begin
|
|||||||
end;
|
end;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
|
if TDbgLinuxThread(AThread).FIsPaused then // in case of deInternal, it may not be paused and can be ignored
|
||||||
if not FIsTerminating then begin
|
if not FIsTerminating then begin
|
||||||
fpseterrno(0);
|
fpseterrno(0);
|
||||||
//AThread.BeforeContinue;
|
//AThread.BeforeContinue;
|
||||||
|
Loading…
Reference in New Issue
Block a user