From 299c90b91dc4624b9ebb9f0c2b10fc3933863411 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Micha=C3=ABl=20Van=20Canneyt?= Date: Sun, 4 Feb 2024 10:47:37 +0100 Subject: [PATCH] * Patch from Martin to set FCloseHandleOnExecute before invoking OnGetHandle - the handler might change it --- packages/fcl-process/src/processbody.inc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/fcl-process/src/processbody.inc b/packages/fcl-process/src/processbody.inc index 0642df7aa1..4c0ce2d6a6 100644 --- a/packages/fcl-process/src/processbody.inc +++ b/packages/fcl-process/src/processbody.inc @@ -1180,6 +1180,7 @@ begin begin FTheirHandleIOType := IOType; FOurHandle:=THAndle(INVALID_HANDLE_VALUE); + FCloseHandleOnExecute:=(IOType<>iotDefault); Case IOType of iotDefault : H:=CreateStandardHandle; iotPipe : H:=CreatePipeHandle; @@ -1188,7 +1189,6 @@ begin iotHandle : H:=CreateCustomHandle; iotNull : H:=CreateNullFileHandle; end; - FCloseHandleOnExecute:=(IOType<>iotDefault); FTheirHandle:=PrepareCreatedHandleForProcess(H); if Assigned(FAfterAllocateHandle) then FAfterAllocateHandle(Self,FTheirHandle,FCloseHandleOnExecute);