[-] AuProcesses::EStandardHandle
This commit is contained in:
parent
d166a00d81
commit
a80524d573
@ -10,8 +10,13 @@
|
|||||||
namespace Aurora::IO
|
namespace Aurora::IO
|
||||||
{
|
{
|
||||||
AUE_DEFINE_VA(EStandardStream,
|
AUE_DEFINE_VA(EStandardStream,
|
||||||
|
// Process Input Stream
|
||||||
eInputStream,
|
eInputStream,
|
||||||
|
|
||||||
|
// Process Output Stream
|
||||||
eOutputStream,
|
eOutputStream,
|
||||||
|
|
||||||
|
// Process Error Stream
|
||||||
eErrorStream
|
eErrorStream
|
||||||
);
|
);
|
||||||
}
|
}
|
@ -7,17 +7,10 @@
|
|||||||
***/
|
***/
|
||||||
#pragma once
|
#pragma once
|
||||||
|
|
||||||
|
#include <Aurora/IO/EStandardStream.hpp>
|
||||||
|
|
||||||
namespace Aurora::Processes
|
namespace Aurora::Processes
|
||||||
{
|
{
|
||||||
AUE_DEFINE(EStandardHandle,
|
using EStandardHandle = Aurora::IO::EStandardStream;
|
||||||
(
|
|
||||||
// Process Input Stream
|
|
||||||
eStdIn,
|
|
||||||
|
|
||||||
// Process Output Stream
|
|
||||||
eStdOut,
|
|
||||||
|
|
||||||
// Process Error Stream
|
|
||||||
eStdError
|
|
||||||
));
|
|
||||||
}
|
}
|
@ -52,7 +52,6 @@ namespace Aurora::IO
|
|||||||
return Aurora::IO::DupHandle(uOSHandle, bWriteAccess, false);
|
return Aurora::IO::DupHandle(uOSHandle, bWriteAccess, false);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
AuUInt64 AFileHandle::DupHandle(AuUInt64 uOSHandle, bool bWriteAccess, bool bShareAccess)
|
AuUInt64 AFileHandle::DupHandle(AuUInt64 uOSHandle, bool bWriteAccess, bool bShareAccess)
|
||||||
{
|
{
|
||||||
return Aurora::IO::DupHandle(uOSHandle, bWriteAccess, bShareAccess);
|
return Aurora::IO::DupHandle(uOSHandle, bWriteAccess, bShareAccess);
|
||||||
|
@ -171,13 +171,19 @@ namespace Aurora::Processes
|
|||||||
{
|
{
|
||||||
DWORD size = destination.length;
|
DWORD size = destination.length;
|
||||||
|
|
||||||
if (!EStandardHandleIsValid(stream) || (stream == EStandardHandle::eStdIn))
|
if (!IO::EStandardStreamIsValid(stream) || (stream == EStandardHandle::eInputStream))
|
||||||
{
|
{
|
||||||
SysPushErrorArg("Invalid Stream");
|
SysPushErrorArg("Invalid Stream");
|
||||||
return {};
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
auto handle = stream == EStandardHandle::eStdError ? this->pipeStdErrRead_ : this->pipeStdOutRead_;
|
if (!destination)
|
||||||
|
{
|
||||||
|
SysPushErrorArg();
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
auto handle = stream == EStandardHandle::eErrorStream ? this->pipeStdErrRead_ : this->pipeStdOutRead_;
|
||||||
if (handle == INVALID_HANDLE_VALUE)
|
if (handle == INVALID_HANDLE_VALUE)
|
||||||
{
|
{
|
||||||
return false;
|
return false;
|
||||||
|
@ -197,7 +197,19 @@ namespace Aurora::Processes
|
|||||||
|
|
||||||
bool ProcessImpl::Read(EStandardHandle stream, const AuMemoryViewStreamWrite &destination, bool nonblock)
|
bool ProcessImpl::Read(EStandardHandle stream, const AuMemoryViewStreamWrite &destination, bool nonblock)
|
||||||
{
|
{
|
||||||
auto handle = stream == EStandardHandle::eStdError ? this->pipeStdErr_[0] : this->pipeStdOut_[0];
|
if (!IO::EStandardStreamIsValid(stream) || (stream == EStandardHandle::eInputStream))
|
||||||
|
{
|
||||||
|
SysPushErrorArg("Invalid Stream");
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (!destination)
|
||||||
|
{
|
||||||
|
SysPushErrorArg();
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
auto handle = stream == EStandardHandle::eErrorStream ? this->pipeStdErr_[0] : this->pipeStdOut_[0];
|
||||||
if (handle < 0)
|
if (handle < 0)
|
||||||
{
|
{
|
||||||
SysPushErrorUninitialized();
|
SysPushErrorUninitialized();
|
||||||
|
Loading…
Reference in New Issue
Block a user