@@ -976,43 +976,6 @@ internal typealias PlatformFileDescriptor = HANDLE
976
976
977
977
// MARK: - Pipe Support
978
978
extension FileDescriptor {
979
- internal static func pipe( ) throws -> (
980
- readEnd: FileDescriptor ,
981
- writeEnd: FileDescriptor
982
- ) {
983
- var saAttributes : SECURITY_ATTRIBUTES = SECURITY_ATTRIBUTES ( )
984
- saAttributes. nLength = DWORD ( MemoryLayout< SECURITY_ATTRIBUTES> . size)
985
- saAttributes. bInheritHandle = true
986
- saAttributes. lpSecurityDescriptor = nil
987
-
988
- var readHandle : HANDLE ? = nil
989
- var writeHandle : HANDLE ? = nil
990
- guard CreatePipe ( & readHandle, & writeHandle, & saAttributes, 0 ) ,
991
- readHandle != INVALID_HANDLE_VALUE,
992
- writeHandle != INVALID_HANDLE_VALUE,
993
- let readHandle: HANDLE = readHandle,
994
- let writeHandle: HANDLE = writeHandle
995
- else {
996
- throw SubprocessError (
997
- code: . init( . failedToCreatePipe) ,
998
- underlyingError: . init( rawValue: GetLastError ( ) )
999
- )
1000
- }
1001
- let readFd = _open_osfhandle (
1002
- intptr_t ( bitPattern: readHandle) ,
1003
- FileDescriptor . AccessMode. readOnly. rawValue
1004
- )
1005
- let writeFd = _open_osfhandle (
1006
- intptr_t ( bitPattern: writeHandle) ,
1007
- FileDescriptor . AccessMode. writeOnly. rawValue
1008
- )
1009
-
1010
- return (
1011
- readEnd: FileDescriptor ( rawValue: readFd) ,
1012
- writeEnd: FileDescriptor ( rawValue: writeFd)
1013
- )
1014
- }
1015
-
1016
979
var platformDescriptor : PlatformFileDescriptor {
1017
980
return HANDLE ( bitPattern: _get_osfhandle ( self . rawValue) ) !
1018
981
}
0 commit comments