From ab16524d6248bc92df21a63a0b5f71ec8cea168f Mon Sep 17 00:00:00 2001 From: Per Bothner Date: Fri, 19 Mar 2004 22:06:12 -0800 Subject: [PATCH] configure.in: FILE variable overrides FLATFORM when linking natFileChannelXXX.cc. * configure.in: FILE variable overrides FLATFORM when linking natFileChannelXXX.cc. * gnu/java/nio/channels/natFileChannelEcos.cc (diag_write): Restored. (write): Call diag_write, as in old natFileDescriptorEcos.cc. From-SVN: r79731 --- libjava/ChangeLog | 8 ++++++++ libjava/configure | 4 ++-- libjava/configure.in | 2 +- .../java/nio/channels/natFileChannelEcos.cc | 20 +++++++++++++++++-- 4 files changed, 29 insertions(+), 5 deletions(-) diff --git a/libjava/ChangeLog b/libjava/ChangeLog index 1b96246bff8..0dee9bef5ad 100644 --- a/libjava/ChangeLog +++ b/libjava/ChangeLog @@ -1,3 +1,11 @@ +2004-03-19 Per Bothner + + * configure.in: FILE variable overrides FLATFORM when linking + natFileChannelXXX.cc. + + * gnu/java/nio/channels/natFileChannelEcos.cc (diag_write): Restored. + (write): Call diag_write, as in old natFileDescriptorEcos.cc. + 2004-03-19 Per Bothner * gnu/gcj/convert/Input_UnicodeBig.java: New class.. diff --git a/libjava/configure b/libjava/configure index ca5d54dea4f..94ce96a5cf4 100755 --- a/libjava/configure +++ b/libjava/configure @@ -1630,7 +1630,7 @@ else if { (eval echo configure:1631: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; }; then for file in conftest.*; do case $file in - *.$ac_ext | *.c | *.o | *.obj) ;; + *.c | *.o | *.obj) ;; *) ac_cv_exeext=`echo $file | sed -e s/conftest//` ;; esac done @@ -9038,7 +9038,7 @@ fi; done EOF cat >> $CONFIG_STATUS < #include #include -#include +#include #include #include #include using gnu::gcj::RawData; using java::io::IOException; -using java::nio::MappedByteBufferImpl; +using gnu::java::nio::MappedByteBufferImpl; using java::io::InterruptedIOException; using java::io::FileNotFoundException; using java::lang::ArrayIndexOutOfBoundsException; using java::lang::NullPointerException; using gnu::java::nio::channels::FileChannelImpl; +extern "C" void diag_write_char (char c); + +static void +diag_write (char *data, int len) +{ + while (len > 0) + { + diag_write_char (*data++); + len--; + } +} + #define NO_FSYNC_MESSAGE "sync unsupported" void @@ -78,6 +90,8 @@ FileChannelImpl::open (jstring, jint) void FileChannelImpl::write (jint) { + char d = (char) b; + ::diag_write (&d, 1); } void @@ -87,6 +101,8 @@ FileChannelImpl::write (jbyteArray b, jint offset, jint len) throw new NullPointerException; if (offset < 0 || len < 0 || offset + len > JvGetArrayLength (b)) throw new ArrayIndexOutOfBoundsException; + char *bytes = (char *)elements (b) + offset; + ::diag_write (bytes, len); } void -- 2.30.2