classpath
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Another Classpath / Kissme incompatibility


From: Stephen Crawley
Subject: Another Classpath / Kissme incompatibility
Date: Sat, 26 Apr 2003 01:15:27 +1000

Folks,

Recent changes to FileDescriptor.java / FileDescriptor.c in Classpath
have broken the Kissme VM bootstrap sequence.  I checked in some Kissme
changes a few minutes ago, but you will also need to apply the patches
below to your Classpath tree.

-- Steve

====================================================================

These patches fix critical bugs introduced by recent FileDescriptor
checkins.  Without them, Kissme dies during VM bootstrap.

Changelog entries:

2003-04-25  Stephen Crawley <address@hidden>
        * java/io/FileDescriptor.java : do dummy initialisation of
          the in/out/err statics before calling nativeInit (not after)
        * native/jni/java-io/FileDescriptor.c (nativeInit) : correct
          the method signature for the FileDescriptor constructor used
          to create the in/out/err FileDescriptor objects

Index: java/io/FileDescriptor.java
===================================================================
RCS file: /cvsroot/classpath/classpath/java/io/FileDescriptor.java,v
retrieving revision 1.15
diff -u -r1.15 FileDescriptor.java
--- java/io/FileDescriptor.java 21 Apr 2003 19:44:09 -0000      1.15
+++ java/io/FileDescriptor.java 25 Apr 2003 14:47:32 -0000
@@ -49,6 +49,27 @@
  */
 public final class FileDescriptor
 {
+  /**
+   * A <code>FileDescriptor</code> representing the system standard input
+   * stream.  This will usually be accessed through the
+   * <code>System.in</code>variable.
+   */
+  public static final FileDescriptor in = null;
+
+  /**
+   * A <code>FileDescriptor</code> representing the system standard output
+   * stream.  This will usually be accessed through the
+   * <code>System.out</code>variable.
+   */
+  public static final FileDescriptor out = null;
+
+  /**
+   * A <code>FileDescriptor</code> representing the system standard error
+   * stream.  This will usually be accessed through the
+   * <code>System.err</code>variable.
+   */
+  public static final FileDescriptor err = null;
+
   static
     {
       if (Configuration.INIT_LOAD_LIBRARY)
@@ -71,27 +92,6 @@
   // EXCL is used only when making a temp file.
   static final int EXCL   = 8;
   static final int SYNC   = 16;
-
-  /**
-   * A <code>FileDescriptor</code> representing the system standard input
-   * stream.  This will usually be accessed through the
-   * <code>System.in</code>variable.
-   */
-  public static final FileDescriptor in = null;
-
-  /**
-   * A <code>FileDescriptor</code> representing the system standard output
-   * stream.  This will usually be accessed through the
-   * <code>System.out</code>variable.
-   */
-  public static final FileDescriptor out = null;
-
-  /**
-   * A <code>FileDescriptor</code> representing the system standard error
-   * stream.  This will usually be accessed through the
-   * <code>System.err</code>variable.
-   */
-  public static final FileDescriptor err = null;

   /**
    * This is the actual native file descriptor value
Index: native/jni/java-io/FileDescriptor.c
===================================================================
RCS file: /cvsroot/classpath/classpath/native/jni/java-io/FileDescriptor.c,v
retrieving revision 1.7
diff -u -r1.7 FileDescriptor.c
--- native/jni/java-io/FileDescriptor.c 21 Apr 2003 19:44:09 -0000      1.7
+++ native/jni/java-io/FileDescriptor.c 25 Apr 2003 14:47:33 -0000
@@ -111,7 +111,7 @@
   jfieldID field;
   jobject filedes;

-  init_method = (*env)->GetStaticMethodID (env, clazz, "<init>", "J");
+  init_method = (*env)->GetStaticMethodID (env, clazz, "<init>", "(J)V");
   if (! init_method)
     return;





reply via email to

[Prev in Thread] Current Thread [Next in Thread]