Minor fix for Windows +stderr+ = +stdout+
parent
d92361286d
commit
9d0d371efc
|
@ -118,11 +118,22 @@ TUPLE: CreateProcess-args
|
|||
: inherited-stderr ( args -- handle )
|
||||
drop STD_ERROR_HANDLE GetStdHandle ;
|
||||
|
||||
: duplicate-handle ( handle -- handle )
|
||||
GetCurrentProcess
|
||||
swap
|
||||
GetCurrentProcess
|
||||
f <void*> [
|
||||
0
|
||||
TRUE
|
||||
DUPLICATE_SAME_ACCESS
|
||||
DuplicateHandle win32-error=0/f
|
||||
] keep *void* ;
|
||||
|
||||
: redirect-stderr ( args -- handle )
|
||||
+stderr+ get
|
||||
dup +stdout+ eq? [
|
||||
drop
|
||||
CreateProcess-args-lpStartupInfo
|
||||
CreateProcess-args-lpStartupInfo duplicate-handle
|
||||
STARTUPINFO-hStdOutput
|
||||
] [
|
||||
GENERIC_WRITE CREATE_ALWAYS redirect
|
||||
|
|
|
@ -707,7 +707,19 @@ FUNCTION: BOOL DeleteFileW ( LPCTSTR lpFileName ) ;
|
|||
! FUNCTION: DosPathToSessionPathA
|
||||
! FUNCTION: DosPathToSessionPathW
|
||||
! FUNCTION: DuplicateConsoleHandle
|
||||
! FUNCTION: DuplicateHandle
|
||||
|
||||
FUNCTION: BOOL DuplicateHandle (
|
||||
HANDLE hSourceProcessHandle,
|
||||
HANDLE hSourceHandle,
|
||||
HANDLE hTargetProcessHandle,
|
||||
LPHANDLE lpTargetHandle,
|
||||
DWORD dwDesiredAccess,
|
||||
BOOL bInheritHandle,
|
||||
DWORD dwOptions ) ;
|
||||
|
||||
: DUPLICATE_CLOSE_SOURCE 1 ;
|
||||
: DUPLICATE_SAME_ACCESS 2 ;
|
||||
|
||||
! FUNCTION: EncodePointer
|
||||
! FUNCTION: EncodeSystemPointer
|
||||
! FUNCTION: EndUpdateResourceA
|
||||
|
|
Loading…
Reference in New Issue