Blob Blame History Raw
--- mono-2.0/mcs/class/Managed.Windows.Forms/System.Windows.Forms/MimeIcon.cs	2008-09-02 16:46:50.000000000 +0100
+++ mono-2.0/mcs/class/Managed.Windows.Forms/System.Windows.Forms/MimeIcon-new.cs	2008-09-18 23:29:05.000000000 +0100
@@ -358,11 +358,12 @@
 				if (internal_mime_type == "harddisk/harddisk" || internal_mime_type == "cdrom/cdrom" || internal_mime_type == "removable/removable")
 					image = ResourceImageLoader.Get ("text-x-generic.png");
 			}
-			
-			index = MimeIconEngine.SmallIcons.Images.Add (image, Color.Transparent);
-			MimeIconEngine.LargeIcons.Images.Add (image, Color.Transparent);
-			
-			MimeIconEngine.MimeIconIndex.Add (internal_mime_type, index);
+
+			if (image != null) {
+				index = MimeIconEngine.SmallIcons.Images.Add (image, Color.Transparent);
+				MimeIconEngine.LargeIcons.Images.Add (image, Color.Transparent);
+				MimeIconEngine.MimeIconIndex.Add (internal_mime_type, index);
+			}
 		}
 		
 		public override object AddAndGetIconIndex (string filename, string mime_type)
@@ -370,11 +371,11 @@
 			int index = -1;
 			
 			Image image = GnomeUtil.GetIcon (filename, mime_type, 48);
-			
-			index = MimeIconEngine.SmallIcons.Images.Add (image, Color.Transparent);
-			MimeIconEngine.LargeIcons.Images.Add (image, Color.Transparent);
-			
-			MimeIconEngine.MimeIconIndex.Add (mime_type, index);
+			if (image != null) {
+				index = MimeIconEngine.SmallIcons.Images.Add (image, Color.Transparent);
+				MimeIconEngine.LargeIcons.Images.Add (image, Color.Transparent);
+				MimeIconEngine.MimeIconIndex.Add (mime_type, index);
+			}
 			
 			return index;
 		}
@@ -384,11 +385,11 @@
 			int index = -1;
 			
 			Image image = GnomeUtil.GetIcon (mime_type, 48);
-			
-			index = MimeIconEngine.SmallIcons.Images.Add (image, Color.Transparent);
-			MimeIconEngine.LargeIcons.Images.Add (image, Color.Transparent);
-			
-			MimeIconEngine.MimeIconIndex.Add (mime_type, index);
+			if (image != null) {
+				index = MimeIconEngine.SmallIcons.Images.Add (image, Color.Transparent);
+				MimeIconEngine.LargeIcons.Images.Add (image, Color.Transparent);
+				MimeIconEngine.MimeIconIndex.Add (mime_type, index);
+			}
 			
 			return index;
 		}