summaryrefslogtreecommitdiff
path: root/packages/fcl-process
diff options
context:
space:
mode:
authormarco <marco@3ad0048d-3df7-0310-abae-a5850022a9f2>2020-04-01 21:12:10 +0000
committermarco <marco@3ad0048d-3df7-0310-abae-a5850022a9f2>2020-04-01 21:12:10 +0000
commitf47f612f827d8f2c60a11a874b4d8bf4a0518436 (patch)
treef3ec1178d97c69dfe9c14e2a8b7f170177255206 /packages/fcl-process
parenta523a1614a6ddbab337a7e17327400dc3a0abbba (diff)
downloadfpc-f47f612f827d8f2c60a11a874b4d8bf4a0518436.tar.gz
* use a PO flag to run idle event. This allows both cases (slow, long term input, and short, quick input) to run without derivation of the class for runcommand.
git-svn-id: https://svn.freepascal.org/svn/fpc/trunk@44496 3ad0048d-3df7-0310-abae-a5850022a9f2
Diffstat (limited to 'packages/fcl-process')
-rw-r--r--packages/fcl-process/src/process.pp2
-rw-r--r--packages/fcl-process/src/processbody.inc2
2 files changed, 2 insertions, 2 deletions
diff --git a/packages/fcl-process/src/process.pp b/packages/fcl-process/src/process.pp
index 07d2a84999..0030584e08 100644
--- a/packages/fcl-process/src/process.pp
+++ b/packages/fcl-process/src/process.pp
@@ -27,7 +27,7 @@ Type
poNoConsole,poNewConsole,
poDefaultErrorMode,poNewProcessGroup,
poDebugProcess,poDebugOnlyThisProcess,
- poPassInput);
+ poPassInput,porunidle);
TShowWindowOptions = (swoNone,swoHIDE,swoMaximize,swoMinimize,swoRestore,swoShow,
swoShowDefault,swoShowMaximized,swoShowMinimized,
diff --git a/packages/fcl-process/src/processbody.inc b/packages/fcl-process/src/processbody.inc
index a6fa78cc05..7dca7b7650 100644
--- a/packages/fcl-process/src/processbody.inc
+++ b/packages/fcl-process/src/processbody.inc
@@ -562,7 +562,7 @@ begin
if assigned(stderr) then
gotoutputstderr:=ReadInputStream(StdErr,StdErrBytesRead,StdErrLength,StdErrString,1);
- if not gotoutput and not gotoutputstderr and Assigned(FOnRunCommandEvent) Then
+ if (porunidle in options) and not gotoutput and not gotoutputstderr and Assigned(FOnRunCommandEvent) Then
FOnRunCommandEvent(self,Nil,RunCommandIdle,'');
end;
// Get left output after end of execution