diff --git a/libjava/ChangeLog b/libjava/ChangeLog
index 68fd9dc9e7782baae9d4155595cf018565fa98c4..6222b5726fafe28bac582691caa943c2714bc1c2 100644
--- a/libjava/ChangeLog
+++ b/libjava/ChangeLog
@@ -1,3 +1,12 @@
+2004-04-23  Michael Koch  <konqueror@gmx.de>
+
+	* gnu/java/nio/channels/FileChannelImpl.java
+	(SET, CUR): Unused, removed.
+	(read): Implement here directly.
+	(implRead): Removed.
+	(write): Implement here directly.
+	(implWrite): Removed.
+
 2004-04-23  Dalibor Topic  <robilad@kaffe.org>
 
 	* javax/rmi/CORBA/PortableRemoteObjectDelegate.java,
diff --git a/libjava/gnu/java/nio/channels/FileChannelImpl.java b/libjava/gnu/java/nio/channels/FileChannelImpl.java
index 4bddf268daf31439add8cc1cee2a18d3e5f47f2a..ea6ef0e43bf833eddb94468c757db0b62e6528a6 100644
--- a/libjava/gnu/java/nio/channels/FileChannelImpl.java
+++ b/libjava/gnu/java/nio/channels/FileChannelImpl.java
@@ -60,13 +60,8 @@ import java.nio.channels.WritableByteChannel;
  * Instances of this class are created by invoking getChannel
  * Upon a Input/Output/RandomAccessFile object.
  */
-
 public final class FileChannelImpl extends FileChannel
 {
-  // These are WHENCE values for seek.
-  static final int SET = 0;
-  static final int CUR = 1;
-
   // These are mode values for open().
   public static final int READ   = 1;
   public static final int WRITE  = 2;
@@ -139,7 +134,15 @@ public final class FileChannelImpl extends FileChannel
 
   public int read (ByteBuffer dst) throws IOException
   {
-    return implRead (dst);
+    int result;
+    byte[] buffer = new byte [dst.remaining ()];
+    
+    result = read (buffer, 0, buffer.length);
+
+    if (result > 0)
+      dst.put (buffer, 0, result);
+
+    return result;
   }
 
   public int read (ByteBuffer dst, long position)
@@ -149,25 +152,12 @@ public final class FileChannelImpl extends FileChannel
       throw new IllegalArgumentException ();
     long oldPosition = implPosition ();
     position (position);
-    int result = implRead (dst);
+    int result = read(dst);
     position (oldPosition);
     
     return result;
   }
 
-  private int implRead (ByteBuffer dst) throws IOException
-  {
-    int result;
-    byte[] buffer = new byte [dst.remaining ()];
-    
-    result = read (buffer, 0, buffer.length);
-
-    if (result > 0)
-      dst.put (buffer, 0, result);
-
-    return result;
-  }
-  
   public native int read ()
     throws IOException;
 
@@ -189,7 +179,20 @@ public final class FileChannelImpl extends FileChannel
 
   public int write (ByteBuffer src) throws IOException
   {
-    return implWrite (src);
+    int len = src.remaining ();
+    if (src.hasArray())
+      {
+	byte[] buffer = src.array();
+	write(buffer, src.arrayOffset() + src.position(), len);
+      }
+    else
+      {
+	// Use a more efficient native method! FIXME!
+	byte[] buffer = new byte [len];
+    	src.get (buffer, 0, len);
+	write (buffer, 0, len);
+      }
+    return len;
   }
     
   public int write (ByteBuffer src, long position)
@@ -209,30 +212,12 @@ public final class FileChannelImpl extends FileChannel
 
     oldPosition = implPosition ();
     seek (position);
-    result = implWrite (src);
+    result = write(src);
     seek (oldPosition);
     
     return result;
   }
 
-  private int implWrite (ByteBuffer src) throws IOException
-  {
-    int len = src.remaining ();
-    if (src.hasArray())
-      {
-	byte[] buffer = src.array();
-	write(buffer, src.arrayOffset() + src.position(), len);
-      }
-    else
-      {
-	// Use a more efficient native method! FIXME!
-	byte[] buffer = new byte [len];
-    	src.get (buffer, 0, len);
-	write (buffer, 0, len);
-      }
-    return len;
-  }
-  
   public native void write (byte[] buffer, int offset, int length)
     throws IOException;