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
This commit is contained in:
parent
037cfe71e0
commit
348c9efcd3
5 changed files with 44 additions and 4 deletions
|
@ -24,14 +24,20 @@ package java.io;
|
|||
// if need be.
|
||||
public final class FileDescriptor
|
||||
{
|
||||
public static final FileDescriptor in = new FileDescriptor (0);
|
||||
public static final FileDescriptor out = new FileDescriptor (1);
|
||||
public static final FileDescriptor err = new FileDescriptor (2);
|
||||
|
||||
public static final FileDescriptor in = null;
|
||||
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 boolean valid ();
|
||||
|
||||
|
||||
// These are mode values for open().
|
||||
static final int READ = 1;
|
||||
static final int WRITE = 2;
|
||||
|
|
|
@ -41,6 +41,14 @@ diag_write (char *data, int len)
|
|||
|
||||
#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
|
||||
java::io::FileDescriptor::valid (void)
|
||||
{
|
||||
|
|
|
@ -45,6 +45,14 @@ details. */
|
|||
|
||||
#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
|
||||
java::io::FileDescriptor::valid (void)
|
||||
{
|
||||
|
|
|
@ -32,6 +32,17 @@ details. */
|
|||
#include <java/lang/Thread.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 *
|
||||
winerr (void)
|
||||
{
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue