--- /home/cpdev/src/classpath/gnu/java/awt/peer/gtk/GdkPixbufDecoder.java	2005-07-05 05:32:32.000000000 +0000
+++ gnu/java/awt/peer/gtk/GdkPixbufDecoder.java	2005-06-30 05:34:03.000000000 +0000
@@ -83,18 +83,15 @@
   
   static native void initStaticState();
   private final int native_state = GtkGenericPeer.getUniqueInteger ();
-
-  // initState() has been called, but pumpDone() has not yet been called.
-  private boolean needsClose = false;
+  private boolean initialized = false;
 
   // the current set of ImageConsumers for this decoder
   Vector curr;
 
   // interface to GdkPixbuf
   native void initState ();
-  native void pumpBytes (byte[] bytes, int len) throws IOException;
-  native void pumpDone () throws IOException;
-  native void finish (boolean needsClose);
+  native void pumpBytes (byte[] bytes, int len);
+  native void finish ();
   static native void streamImage(int[] bytes, String format, int width, int height, boolean hasAlpha, DataOutput sink);
   
   // gdk-pixbuf provids data in RGBA format
@@ -166,11 +163,8 @@
     byte bytes[] = new byte[4096];
     int len = 0;
     initState();
-    needsClose = true;
     while ((len = is.read (bytes)) != -1)
       pumpBytes (bytes, len);
-    pumpDone();
-    needsClose = false;
     
     for (int i = 0; i < curr.size (); i++)
       {
@@ -183,7 +177,7 @@
 
   public void finalize()
   {
-    finish(needsClose);
+    finish();
   }
 
 
