X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/79066131734040a7d01b87566fc1262e7fbe51ad..9c862cfb93c8d54cfdd18a7c54c518b1234afa1c:/src/common/execcmn.cpp diff --git a/src/common/execcmn.cpp b/src/common/execcmn.cpp index f89e061b2c..a84c6d10f0 100644 --- a/src/common/execcmn.cpp +++ b/src/common/execcmn.cpp @@ -16,7 +16,7 @@ // this file should never be compiled directly, just included by other code #ifndef _WX_USED_BY_WXEXECUTE_ - #error "Please don't exclude this file from build!" + #error "You should never directly build this file!" #endif // ---------------------------------------------------------------------------- @@ -65,6 +65,8 @@ private: // the size of the buffer size_t m_size; + + DECLARE_NO_COPY_CLASS(wxStreamTempInputBuffer) }; inline wxStreamTempInputBuffer::wxStreamTempInputBuffer() @@ -79,13 +81,17 @@ inline void wxStreamTempInputBuffer::Init(wxPipeInputStream *stream) m_stream = stream; } +inline void wxStreamTempInputBuffer::Update() { - if ( m_stream && m_stream->IsAvailable() ) + if ( m_stream && m_stream->CanRead() ) { // realloc in blocks of 4Kb: this is the default (and minimal) buffer // size of the Unix pipes so it should be the optimal step - static const size_t incSize = 4096; + // + // NB: don't use "static int" in this inline function, some compilers + // (e.g. IBM xlC) don't like it + enum { incSize = 4096 }; void *buf = realloc(m_buffer, m_size + incSize); if ( !buf ) @@ -102,6 +108,7 @@ void wxStreamTempInputBuffer::Update() } } +inline wxStreamTempInputBuffer::~wxStreamTempInputBuffer() { if ( m_buffer ) @@ -111,24 +118,5 @@ wxStreamTempInputBuffer::~wxStreamTempInputBuffer() } } -// ---------------------------------------------------------------------------- -// platform-dependent parts of wxProcess implementation included -// ---------------------------------------------------------------------------- - -bool wxProcess::IsInputOpened() const -{ - return m_inputStream && ((wxPipeInputStream *)m_inputStream)->IsOpened(); -} - -bool wxProcess::IsInputAvailable() const -{ - return m_inputStream && ((wxPipeInputStream *)m_inputStream)->IsAvailable(); -} - -bool wxProcess::IsErrorAvailable() const -{ - return m_errorStream && ((wxPipeInputStream *)m_errorStream)->IsAvailable(); -} - #endif // _WX_WXEXEC_CPP_