Index: NSImage.m
===================================================================
--- NSImage.m	(revision 30072)
+++ NSImage.m	(working copy)
@@ -212,7 +212,7 @@
    */
   [imageLock lock];
   image = (NSImage*)[nameDict objectForKey: aName];
-  if (image == nil || [(id)image _resource] == nil)
+  if (image == nil)// || [(id)image _resource] == nil)
     {
       NSString	*realName = [nsmapping objectForKey: aName];
       NSString	*ext;
@@ -592,11 +592,12 @@
   
   if ((proxy = [nameDict objectForKey: _name]) == nil)
     {
-      proxy = [GSThemeProxy alloc];
+      //proxy = [GSThemeProxy alloc];
+      proxy = self;
       [nameDict setObject: proxy forKey: _name];
-      [proxy release]; 
+  //    [proxy release]; 
     }
-  [proxy _setResource: self];
+  //[proxy _setResource: self];
   
   [imageLock unlock];
   return YES;
@@ -1831,6 +1832,9 @@
   GSRepData *repd;
 
   repd = [self _cacheForRep: rep];
+
+  if (!repd)
+    return nil;
   rep = repd->rep;
   if ([rep isKindOfClass: cachedClass] == NO)
     return nil;
@@ -1993,7 +1997,7 @@
     {
       /* Remove the name from the old image.
        */
-      DESTROY(((NSImage*)[proxy _resource])->_name);
+      //DESTROY(((NSImage*)[proxy _resource])->_name);
     }
   [proxy _setResource: image];
   IF_NO_GC([[proxy retain] autorelease]);
