File ifolder3-libeel.patch of Package ifolder3

Index: src/UI/Linux/LinuxClient/library/iFolderViewItem.cs
===================================================================
--- src/UI/Linux/LinuxClient/library/iFolderViewItem.cs	(revision 7313)
+++ src/UI/Linux/LinuxClient/library/iFolderViewItem.cs	(working copy)
@@ -65,6 +65,7 @@
 
 		private static Gdk.Pixbuf EncryptedOKPixbufSpotlight			= null;	
 		private static Gdk.Pixbuf SharedOKPixbuf			= null;
+		private static bool IsLibeelAvailable=true;
 
 		private static Gdk.Pixbuf SharedOKPixbufSpotlight			= null;	
 		///
@@ -302,62 +303,54 @@
 				if (OKPixbuf == null)
 				{
 					OKPixbuf = new Gdk.Pixbuf(Util.ImagesPath("ifolder48.png"));
-					OKPixbufSpotlight =
-						Util.EelCreateSpotlightPixbuf(OKPixbuf);
+					OKPixbufSpotlight = WrapperEelCreateSpotlightPixbuf(OKPixbuf);
 				}
 
 				if (EncryptedOKPixbuf == null)
 				{
 					EncryptedOKPixbuf = new Gdk.Pixbuf(Util.ImagesPath("encrypt-ilock-48.png"));
-					EncryptedOKPixbufSpotlight =
-						Util.EelCreateSpotlightPixbuf(EncryptedOKPixbuf);
+					EncryptedOKPixbufSpotlight = WrapperEelCreateSpotlightPixbuf(EncryptedOKPixbuf);
 				}
 				
 				if (SharedOKPixbuf == null)
 				{
 					SharedOKPixbuf = new Gdk.Pixbuf(Util.ImagesPath("ifolder_user_48.png"));
-					SharedOKPixbufSpotlight =
-						Util.EelCreateSpotlightPixbuf(SharedOKPixbuf);
+					SharedOKPixbufSpotlight = WrapperEelCreateSpotlightPixbuf(SharedOKPixbuf);
 				}
 				
 				if (SubscriptionPixbuf == null)
 				{
 					SubscriptionPixbuf =
 						new Gdk.Pixbuf(Util.ImagesPath("ifolder-download48.png"));
-					SubscriptionPixbufSpotlight =
-						Util.EelCreateSpotlightPixbuf(SubscriptionPixbuf);
+					SubscriptionPixbufSpotlight = WrapperEelCreateSpotlightPixbuf(SubscriptionPixbuf);
 				}
 				
 				if (WarningPixbuf == null)
 				{
 					WarningPixbuf =
 						new Gdk.Pixbuf(Util.ImagesPath("ifolder-warning48.png"));
-					WarningPixbufSpotlight =
-						Util.EelCreateSpotlightPixbuf(WarningPixbuf);
+					WarningPixbufSpotlight = WrapperEelCreateSpotlightPixbuf(WarningPixbuf);
 				}
 	
 				if (ErrorPixbuf == null)
 				{
 					ErrorPixbuf =
 						new Gdk.Pixbuf(Util.ImagesPath("ifolder-error48.png"));
-					ErrorPixbufSpotlight =
-						Util.EelCreateSpotlightPixbuf(ErrorPixbuf);
+					ErrorPixbufSpotlight = WrapperEelCreateSpotlightPixbuf(ErrorPixbuf);
 				}
 	
 				if (SyncPixbuf == null)
 				{
 					SyncPixbuf =
 						new Gdk.Pixbuf(Util.ImagesPath("ifolder-sync48.png"));
-					SyncPixbufSpotlight =
-						Util.EelCreateSpotlightPixbuf(SyncPixbuf);
+					SyncPixbufSpotlight = WrapperEelCreateSpotlightPixbuf(SyncPixbuf);
 				}
 	
 				if (WaitPixbuf == null)
 				{
 					WaitPixbuf =
 						new Gdk.Pixbuf(Util.ImagesPath("ifolder-waiting48.png"));
-					WaitPixbufSpotlight =
-						Util.EelCreateSpotlightPixbuf(WaitPixbuf);
+					WaitPixbufSpotlight = WrapperEelCreateSpotlightPixbuf(WaitPixbuf);
 				}
 				
 /*				if (NwDisconnectPixBuf == null)
@@ -370,6 +363,23 @@
 
 			}
 		}
+
+		/// Wrapper API to check presence libeel.so.*, if dll not found skipp calling the same
+		/// and return original buffer as it is.
+		/// </summary>
+		private Gdk.Pixbuf WrapperEelCreateSpotlightPixbuf(Gdk.Pixbuf OrgPixBuf)        
+		{
+			try
+		        {
+			        if(IsLibeelAvailable == true)
+			                return Util.EelCreateSpotlightPixbuf(OrgPixBuf);
+	                }
+	                catch(Exception)
+	                {
+		                IsLibeelAvailable = false;
+		        }
+		        return OrgPixBuf;
+		 }
 
         /// <summary>
         /// Event Handler for Widget Realized
openSUSE Build Service is sponsored by