From: Mohan Embar Date: Fri, 17 Oct 2003 18:44:42 +0000 (+0000) Subject: win32.cc: (_Jv_pipe) Implemented. X-Git-Tag: releases/gcc-3.4.0~2937 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=ef050c9e232a0473f52f02dfbd84f8252fa888c5;p=thirdparty%2Fgcc.git win32.cc: (_Jv_pipe) Implemented. * win32.cc: (_Jv_pipe) Implemented. * gnu/java/nio/natPipeImpl.cc: (nativeInit) Use _Jv_pipe instead of ::pipe. * include/posix.h: (_Jv_pipe) New inline. * include/win32.h: (_Jv_pipe) New declaration. From-SVN: r72616 --- diff --git a/libjava/ChangeLog b/libjava/ChangeLog index d751c102c114..03d60bd49bf1 100644 --- a/libjava/ChangeLog +++ b/libjava/ChangeLog @@ -1,3 +1,11 @@ +2003-10-17 Mohan Embar + + * win32.cc (_Jv_pipe): Implemented. + * gnu/java/nio/natPipeImpl.cc (nativeInit): Use + _Jv_pipe instead of ::pipe. + * include/posix.h (_Jv_pipe): New inline. + * include/win32.h (_Jv_pipe): New declaration. + 2003-10-17 Ralph Loader * java/lang/StringBuffer.java (getChars): Fix array index checks. diff --git a/libjava/gnu/java/nio/natPipeImpl.cc b/libjava/gnu/java/nio/natPipeImpl.cc index 522c24cc807c..caae89cdd1ab 100644 --- a/libjava/gnu/java/nio/natPipeImpl.cc +++ b/libjava/gnu/java/nio/natPipeImpl.cc @@ -26,7 +26,7 @@ gnu::java::nio::PipeImpl::nativeInit (::java::nio::channels::spi::SelectorProvid { int filedes [2]; - if (::pipe (filedes) < 0) + if (_Jv_pipe (filedes) < 0) throw new ::java::io::IOException (JvNewStringUTF (strerror (errno))); /* FIXME diff --git a/libjava/include/posix.h b/libjava/include/posix.h index 2c6054ec93ce..c8cd5e25e28d 100644 --- a/libjava/include/posix.h +++ b/libjava/include/posix.h @@ -178,4 +178,11 @@ _Jv_read(int s, void *buf, int len) #endif /* DISABLE_JAVA_NET */ +// Wraps ::pipe +static inline int +_Jv_pipe (int filedes[2]) +{ + return ::pipe (filedes); +} + #endif /* __JV_POSIX_H__ */ diff --git a/libjava/include/win32.h b/libjava/include/win32.h index 6da0eafaa9a2..e169adf9b284 100644 --- a/libjava/include/win32.h +++ b/libjava/include/win32.h @@ -95,6 +95,7 @@ extern void _Jv_platform_initialize (void); extern void _Jv_platform_initProperties (java::util::Properties*); extern jlong _Jv_platform_gettimeofday (); extern int _Jv_select (int n, fd_set *, fd_set *, fd_set *, struct timeval *); +extern int _Jv_pipe (int filedes[2]); inline void _Jv_platform_close_on_exec (jint) diff --git a/libjava/win32.cc b/libjava/win32.cc index abe768ae5bd2..e44b7b287296 100644 --- a/libjava/win32.cc +++ b/libjava/win32.cc @@ -12,6 +12,7 @@ details. */ #include #include #include +#include #include #include @@ -342,3 +343,9 @@ _Jv_select (int n, fd_set *readfds, fd_set *writefds, } return r; } + +int +_Jv_pipe (int filedes[2]) +{ + return _pipe (filedes, 4096, _O_BINARY); +}