Mercurial > hg > octave-lyh
diff src/oct-procbuf.cc @ 5451:ed08548b9054
[project @ 2005-09-15 19:52:50 by jwe]
author | jwe |
---|---|
date | Thu, 15 Sep 2005 19:52:50 +0000 |
parents | 4c8a2e4e0717 |
children | 89f5979e8552 |
line wrap: on
line diff
--- a/src/oct-procbuf.cc +++ b/src/oct-procbuf.cc @@ -54,15 +54,23 @@ static octave_procbuf *octave_procbuf_list = 0; +#if defined (__CYGWIN32__) +#define W32POPEN popen +#define W32PCLOSE pclose +#elif defined (__MINGW32__) +#define W32POPEN _popen +#define W32PCLOSE _pclose +#endif + octave_procbuf * octave_procbuf::open (const char *command, int mode) { -#if defined (__CYGWIN32__) +#if defined (__CYGWIN32__) || defined (__MINGW32__) if (is_open ()) return 0; - f = popen (command, (mode & std::ios::in) ? "r" : "w"); + f = ::W32POPEN (command, (mode & std::ios::in) ? "r" : "w"); if (! f) return 0; @@ -166,11 +174,13 @@ octave_procbuf * octave_procbuf::close (void) { -#if defined (__CYGWIN32__) + + +#if defined (__CYGWIN32__) || defined (__MINGW32__) if (f) { - wstatus = ::pclose (f); + wstatus = ::W32PCLOSE (f); f = 0; }