mirror of
https://github.com/ruby/ruby.git
synced 2025-09-15 08:33:58 +02:00
* io.c (pipe_finalize, pipe_popen): two-way pipe support for win32.
* win32/win32.c (ChildRecord, FindFreeChildSlot): ditto. * win32/win32.c, win32/win32.h (pipe_exec): new function for two-way pipe support for win32. * win32/win32.c, win32/win32.h (FindPipedChildSlot, rb_w32_popen, rb_w32_pclose): removed functions for two-way pipe support for win32. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2610 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This commit is contained in:
parent
cd6cffa7b6
commit
2f2143a2be
5 changed files with 214 additions and 139 deletions
|
@ -145,11 +145,8 @@ extern "C++" {
|
|||
#define utime _utime
|
||||
#define vsnprintf _vsnprintf
|
||||
#define snprintf _snprintf
|
||||
#define popen _popen
|
||||
#define pclose _pclose
|
||||
#undef stat
|
||||
#define stat(path,st) rb_w32_stat(path,st)
|
||||
/* these are defined in nt.c */
|
||||
|
||||
#ifdef __MINGW32__
|
||||
struct timezone {
|
||||
|
@ -161,8 +158,7 @@ extern int NtMakeCmdVector(char *, char ***, int);
|
|||
extern void NtInitialize(int *, char ***);
|
||||
extern char * NtGetLib(void);
|
||||
extern char * NtGetBin(void);
|
||||
extern FILE * rb_w32_popen(char *, char *);
|
||||
extern int rb_w32_pclose(FILE *);
|
||||
extern pid_t pipe_exec(char *, int, FILE **, FILE **);
|
||||
extern int flock(int fd, int oper);
|
||||
extern int rb_w32_fddup(int);
|
||||
extern void rb_w32_fdclose(FILE *);
|
||||
|
@ -276,14 +272,6 @@ extern char *rb_w32_strerror(int);
|
|||
#define EWOULDBLOCK 10035 /* EBASEERR + 35 (winsock.h) */
|
||||
#endif
|
||||
|
||||
#ifdef popen
|
||||
#undef popen
|
||||
#define popen rb_w32_popen
|
||||
#endif
|
||||
#ifdef pclose
|
||||
#undef pclose
|
||||
#define pclose rb_w32_pclose
|
||||
#endif
|
||||
|
||||
/* #undef va_start */
|
||||
/* #undef va_end */
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue