Calling Graphics.drawImage( image, x, y, observer ) results in an endless repaint loop when observer is non null and the image was retrieved via Component.createImage(width,height). Note: this does not happen for Image's created via Toolkit.getImage()... Testcase follows
Created attachment 8149 [details] Demonstrates the repaint loop
Changing the call to drawImage( image, x, y, null ) makes the program work. However, an Image create by createImage(width,height) should be completely initialized at once: there is no image data to read asynchronously...
Confirmed.
This prints: Got the image: gnu.java.awt.peer.gtk.GtkImage@ef01d050 paint 1 1 repaints, probably ok. Fixed by Sven's image work. Closing.