mirror of https://gitlab.com/basile.b/dexed.git
removed TCheckedAsyncProcess (was replaced by TCEProcess)
This commit is contained in:
parent
1c33a5bb4a
commit
6f79eceecf
|
@ -61,21 +61,6 @@ type
|
||||||
function length: integer;
|
function length: integer;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
(**
|
|
||||||
* Workaround for a TAsyncProcess Linux issue: OnTerminate event not called.
|
|
||||||
* An idle timer is started when executing and trigs the event if necessary.
|
|
||||||
*)
|
|
||||||
TCheckedAsyncProcess = class(TAsyncProcess)
|
|
||||||
{$IFNDEF WINDOWS}
|
|
||||||
private
|
|
||||||
fTimer: TIdleTimer;
|
|
||||||
procedure checkTerminated(sender: TObject);
|
|
||||||
public
|
|
||||||
constructor Create(aOwner: TComponent); override;
|
|
||||||
procedure Execute; override;
|
|
||||||
{$ENDIF}
|
|
||||||
end;
|
|
||||||
|
|
||||||
(**
|
(**
|
||||||
* TProcess with assign() 'overriden'.
|
* TProcess with assign() 'overriden'.
|
||||||
*)
|
*)
|
||||||
|
@ -210,7 +195,6 @@ type
|
||||||
* Terminates and frees aProcess.
|
* Terminates and frees aProcess.
|
||||||
*)
|
*)
|
||||||
procedure killProcess(var aProcess: TAsyncProcess);
|
procedure killProcess(var aProcess: TAsyncProcess);
|
||||||
procedure killProcess(var aProcess: TCheckedAsyncProcess);
|
|
||||||
|
|
||||||
(**
|
(**
|
||||||
* Ensures that the i/o process pipes are not redirected if it waits on exit.
|
* Ensures that the i/o process pipes are not redirected if it waits on exit.
|
||||||
|
@ -372,33 +356,6 @@ begin
|
||||||
exit(system.length(self));
|
exit(system.length(self));
|
||||||
end;
|
end;
|
||||||
|
|
||||||
{$IFNDEF WINDOWS}
|
|
||||||
constructor TCheckedAsyncProcess.Create(aOwner: TComponent);
|
|
||||||
begin
|
|
||||||
inherited;
|
|
||||||
fTimer := TIdleTimer.Create(self);
|
|
||||||
fTimer.Enabled := false;
|
|
||||||
fTimer.Interval := 50;
|
|
||||||
fTimer.AutoEnabled := false;
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TCheckedAsyncProcess.Execute;
|
|
||||||
begin
|
|
||||||
if OnTerminate <> nil then
|
|
||||||
fTimer.Enabled :=true;
|
|
||||||
fTimer.OnTimer := @checkTerminated;
|
|
||||||
inherited;
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TCheckedAsyncProcess.checkTerminated(sender: TObject);
|
|
||||||
begin
|
|
||||||
if Running then exit;
|
|
||||||
if OnTerminate = nil then exit;
|
|
||||||
fTimer.Enabled:=false;
|
|
||||||
OnTerminate(Self);
|
|
||||||
end;
|
|
||||||
{$ENDIF}
|
|
||||||
|
|
||||||
procedure TProcessEx.Assign(aValue: TPersistent);
|
procedure TProcessEx.Assign(aValue: TPersistent);
|
||||||
var
|
var
|
||||||
src: TProcess;
|
src: TProcess;
|
||||||
|
@ -905,16 +862,6 @@ begin
|
||||||
aProcess := nil;
|
aProcess := nil;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure killProcess(var aProcess: TCheckedAsyncProcess);
|
|
||||||
begin
|
|
||||||
if aProcess = nil then
|
|
||||||
exit;
|
|
||||||
if aProcess.Running then
|
|
||||||
aProcess.Terminate(0);
|
|
||||||
aProcess.Free;
|
|
||||||
aProcess := nil;
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure ensureNoPipeIfWait(aProcess: TProcess);
|
procedure ensureNoPipeIfWait(aProcess: TProcess);
|
||||||
begin
|
begin
|
||||||
if not (poWaitonExit in aProcess.Options) then
|
if not (poWaitonExit in aProcess.Options) then
|
||||||
|
|
|
@ -292,7 +292,6 @@ type
|
||||||
without the overload aProcess does not get the Parameters if aProcess is TAsynProcess...}
|
without the overload aProcess does not get the Parameters if aProcess is TAsynProcess...}
|
||||||
procedure setProcess(var aProcess: TProcess);
|
procedure setProcess(var aProcess: TProcess);
|
||||||
procedure setProcess(var aProcess: TAsyncProcess);
|
procedure setProcess(var aProcess: TAsyncProcess);
|
||||||
procedure setProcess(var aProcess: TCheckedAsyncProcess);
|
|
||||||
procedure setProcess(var aProcess: TCEProcess);
|
procedure setProcess(var aProcess: TCEProcess);
|
||||||
end;
|
end;
|
||||||
|
|
||||||
|
@ -1260,17 +1259,6 @@ begin
|
||||||
aProcess.StartupOptions := aProcess.StartupOptions + [suoUseShowWindow];
|
aProcess.StartupOptions := aProcess.StartupOptions + [suoUseShowWindow];
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TCustomProcOptions.setProcess(var aProcess: TCheckedAsyncProcess);
|
|
||||||
begin
|
|
||||||
aProcess.Parameters.Clear;
|
|
||||||
aProcess.Parameters.AddText(fSymStringExpander.expand(Parameters.Text));
|
|
||||||
aProcess.Executable := fExecutable;
|
|
||||||
aProcess.ShowWindow := fShowWin;
|
|
||||||
aProcess.Options := fOptions;
|
|
||||||
aProcess.CurrentDirectory := fWorkDir;
|
|
||||||
aProcess.StartupOptions := aProcess.StartupOptions + [suoUseShowWindow];
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TCustomProcOptions.setProcess(var aProcess: TCEProcess);
|
procedure TCustomProcOptions.setProcess(var aProcess: TCEProcess);
|
||||||
begin
|
begin
|
||||||
aProcess.Parameters.Clear;
|
aProcess.Parameters.Clear;
|
||||||
|
|
Loading…
Reference in New Issue