Commit 348c9efc by Adam Megacz Committed by Adam Megacz

FileDescriptor.java: Initialize in/out/err in init().

2002-03-06  Adam Megacz  <adam@xwt.org>

        * java/io/FileDescriptor.java: Initialize in/out/err in init().
        * java/io/natFileDescriptorWin32.cc (init()): Added function.
        * java/io/natFileDescriptorPosix.cc (init()): Added function.
        * java/io/natFileDescriptorEcos.cc (init()): Added function.

From-SVN: r50378
parent 037cfe71
2002-03-06 Adam Megacz <adam@xwt.org>
* java/io/FileDescriptor.java: Initialize in/out/err in init().
* java/io/natFileDescriptorWin32.cc (init()): Added function.
* java/io/natFileDescriptorPosix.cc (init()): Added function.
* java/io/natFileDescriptorEcos.cc (init()): Added function.
2002-03-06 Eric Blake <ebb9@email.byu.edu> 2002-03-06 Eric Blake <ebb9@email.byu.edu>
* scripts/unicode-decomp.pl: Move from chartables.pl, and remove * scripts/unicode-decomp.pl: Move from chartables.pl, and remove
......
...@@ -24,14 +24,20 @@ package java.io; ...@@ -24,14 +24,20 @@ package java.io;
// if need be. // if need be.
public final class FileDescriptor public final class FileDescriptor
{ {
public static final FileDescriptor in = new FileDescriptor (0);
public static final FileDescriptor out = new FileDescriptor (1); public static final FileDescriptor in = null;
public static final FileDescriptor err = new FileDescriptor (2); public static final FileDescriptor out = null;
public static final FileDescriptor err = null;
private static native void init();
static
{
init();
}
public native void sync () throws SyncFailedException; public native void sync () throws SyncFailedException;
public native boolean valid (); public native boolean valid ();
// These are mode values for open(). // These are mode values for open().
static final int READ = 1; static final int READ = 1;
static final int WRITE = 2; static final int WRITE = 2;
......
...@@ -41,6 +41,14 @@ diag_write (char *data, int len) ...@@ -41,6 +41,14 @@ diag_write (char *data, int len)
#define NO_FSYNC_MESSAGE "sync unsupported" #define NO_FSYNC_MESSAGE "sync unsupported"
void
java::io::FileDescriptor::init(void)
{
in = new java::io::FileDescriptor((jint)(GetStdHandle (0)));
out = new java::io::FileDescriptor((jint)(GetStdHandle (1)));
err = new java::io::FileDescriptor((jint)(GetStdHandle (2)));
}
jboolean jboolean
java::io::FileDescriptor::valid (void) java::io::FileDescriptor::valid (void)
{ {
......
...@@ -45,6 +45,14 @@ details. */ ...@@ -45,6 +45,14 @@ details. */
#define NO_FSYNC_MESSAGE "sync unsupported" #define NO_FSYNC_MESSAGE "sync unsupported"
void
java::io::FileDescriptor::init(void)
{
in = new java::io::FileDescriptor((jint)(GetStdHandle (0)));
out = new java::io::FileDescriptor((jint)(GetStdHandle (1)));
err = new java::io::FileDescriptor((jint)(GetStdHandle (2)));
}
jboolean jboolean
java::io::FileDescriptor::valid (void) java::io::FileDescriptor::valid (void)
{ {
......
...@@ -32,6 +32,17 @@ details. */ ...@@ -32,6 +32,17 @@ details. */
#include <java/lang/Thread.h> #include <java/lang/Thread.h>
#include <java/io/FileNotFoundException.h> #include <java/io/FileNotFoundException.h>
// FIXME: casting a FILE (pointer) to a jint will not work on Win64 --
// we should be using gnu.gcj.RawData's.
void
java::io::FileDescriptor::init(void)
{
in = new java::io::FileDescriptor((jint)(GetStdHandle (STD_INPUT_HANDLE)));
out = new java::io::FileDescriptor((jint)(GetStdHandle (STD_OUTPUT_HANDLE)));
err = new java::io::FileDescriptor((jint)(GetStdHandle (STD_ERROR_HANDLE)));
}
static char * static char *
winerr (void) winerr (void)
{ {
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment