 +            {
 +                ;
 +            }
-+            else if (textureInputStream == null)
++            else if (fnfe != null)
 +            {
-+                throw new FileNotFoundException();
++                throw fnfe;
 +            }
 +            else if (this.func_98147_a(par1Str, itexturepack))
              {

--- ../src_base/minecraft/net/minecraft/client/renderer/texture/TextureManager.java
+++ ../src_work/minecraft/net/minecraft/client/renderer/texture/TextureManager.java
@@ -6,6 +6,7 @@
 import java.io.File;
 import java.io.FileNotFoundException;
 import java.io.IOException;
+import java.io.InputStream;
 import java.util.ArrayList;
 import java.util.HashMap;
 import java.util.List;
@@ -66,17 +67,38 @@
 
     public List func_94266_e(String par1Str)
     {

-            int i = bufferedimage.getHeight();
-            int j = bufferedimage.getWidth();
-            String s1 = this.func_98146_d(par1Str);
+            BufferedImage bufferedimage = null;
+            int i = 0;
+            int j = 0;
+            FileNotFoundException fnfe = null;
+            try
+            {
+                bufferedimage = ImageIO.read(itexturepack.getResourceAsStream("/" + textureFile));
+                i = bufferedimage.getHeight();
+                j = bufferedimage.getWidth();
+            }
+            catch (FileNotFoundException e)
+            {
+                fnfe = e;
+            }
+            String s1 = textureName;
 
