diff --git a/src/u_tools.pas b/src/u_tools.pas index d0da48b3..ac43f26e 100644 --- a/src/u_tools.pas +++ b/src/u_tools.pas @@ -18,6 +18,7 @@ type TToolItem = class(TCollectionItem) private fToolItems: TToolItems; + fTerminatedFlag: boolean; fNextToolAlias: string; fProcess: TDexedProcess; fExecutable: TFilename; @@ -190,6 +191,7 @@ const confSpec = 'Are you sure you want to execute the "%s" tool ?'; begin u_processes.killProcess(fProcess); + fTerminatedFlag := false; if fMsgs = nil then fMsgs := getMessageDisplay; @@ -263,6 +265,9 @@ begin end; if (not fProcess.Running) then begin + if fTerminatedFlag then + exit; + fTerminatedFlag := true; if fProcess.ExitStatus <> 0 then begin fMsgs.message(format('error: the tool (%s) has returned the status %s',