From: <ka...@us...> - 2009-07-01 18:06:05
|
Revision: 3225 http://java-game-lib.svn.sourceforge.net/java-game-lib/?rev=3225&view=rev Author: kappa1 Date: 2009-07-01 18:05:44 +0000 (Wed, 01 Jul 2009) Log Message: ----------- fix: Animated gif's were not working with ImageIO as it only returns a BufferedImage, so switched to Toolkit with MediaTracker. Modified Paths: -------------- trunk/LWJGL/src/java/org/lwjgl/util/applet/AppletLoader.java Modified: trunk/LWJGL/src/java/org/lwjgl/util/applet/AppletLoader.java =================================================================== --- trunk/LWJGL/src/java/org/lwjgl/util/applet/AppletLoader.java 2009-06-19 10:32:57 UTC (rev 3224) +++ trunk/LWJGL/src/java/org/lwjgl/util/applet/AppletLoader.java 2009-07-01 18:05:44 UTC (rev 3225) @@ -38,6 +38,7 @@ import java.awt.FontMetrics; import java.awt.Graphics; import java.awt.Image; +import java.awt.MediaTracker; import java.io.DataInputStream; import java.io.DataOutputStream; import java.io.File; @@ -70,8 +71,6 @@ import java.util.jar.JarOutputStream; import java.util.jar.Pack200; -import javax.imageio.ImageIO; - import sun.security.util.SecurityConstants; /** @@ -1115,12 +1114,19 @@ try { URL url = AppletLoader.class.getResource("/"+s); - // if logo not found in jar, look at URL + // if image not found in jar, look outside it if (url == null) { url = new URL(getCodeBase(), s); } - return ImageIO.read(url); + Image image = super.getImage(url); + + // wait for image to load + MediaTracker tracker = new MediaTracker(this); + tracker.addImage(image, 0); + tracker.waitForAll(); + + return image; } catch (Exception e) { /* */ } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |