--- easytag-2.1.6/src/about.c	2008-03-12 22:24:40.000000000 +0100
+++ MYeasytag-2.1.6/src/about.c	2010-04-25 13:30:06.000000000 +0200
@@ -44,6 +44,11 @@
 #include "msgbox.h"
 #include "charset.h"
 
+/* MS : MacOSX Build */
+#include <limits.h>
+#include <unistd.h>							/* for image exists checks */
+#include <CoreFoundation/CoreFoundation.h>	/* for Bundle Location check */
+
 #ifndef PACKAGE_DATA_DIR
 #   include "../pixmaps/EasyTAG_logo.xpm"
 #endif
@@ -280,35 +285,33 @@
     /* EasyTAG Logo */
     gtk_widget_realize(AboutWindow);
 
-#ifdef PACKAGE_DATA_DIR
-    pixmap = gdk_pixmap_create_from_xpm(AboutWindow->window,&mask,NULL,PACKAGE_DATA_DIR"/EasyTAG_logo.xpm");
-#else
-    pixmap = gdk_pixmap_create_from_xpm_d(AboutWindow->window,&mask,NULL,EasyTAG_logo_xpm);
-#endif
-    
-    if (pixmap)
+	/* MS - MacOSX build : 	load pic directly from file instead of xpm pixmap, because there seems
+	 * 						to be a bug in Macs GTK lib concerning gdk_pixmap_create_from_xpm 
+	 *						and load it directly from inside the Mac App Bundle with CoreFoundation*/
+	
+	CFBundleRef mainBundle = CFBundleGetMainBundle();
+    CFURLRef resourcesURL = CFBundleCopyResourcesDirectoryURL(mainBundle);
+    char path[PATH_MAX];
+    if (!CFURLGetFileSystemRepresentation(resourcesURL, TRUE, (UInt8 *)path, PATH_MAX))
     {
-        Logo = gtk_image_new_from_pixmap(pixmap, mask);
-        g_object_unref(pixmap);
-        g_object_unref(mask);
-        gtk_box_pack_start(GTK_BOX(VBox),Logo,FALSE,TRUE,0);
-        gtk_misc_set_padding(GTK_MISC(Logo),2,2);
+        fprintf(stderr, "Determining Mac App Bundle Location failed :-(");
     }
-/*#ifdef PACKAGE_DATA_DIR
-    pixbuf = gdk_pixbuf_new_from_file(PACKAGE_DATA_DIR"/EasyTAG_logo.png",&error);
-#endif
-    
-    if (pixbuf)
-    {
-        Logo = gtk_image_new_from_pixbuf(pixbuf);
-        g_object_unref(pixbuf);
-        gtk_box_pack_start(GTK_BOX(VBox),Logo,FALSE,TRUE,0);
-        gtk_misc_set_padding(GTK_MISC(Logo),2,2);
-    }else
-    {
-        Log_Print(LOG_ERROR,error->message);
-        g_error_free(error);
-    }*/
+    CFRelease(resourcesURL);
+
+	printf("Bundle URL is  :     %s\n", path);
+
+	char macBundleLogoURL[PATH_MAX + 100] = "";		/* Large enough for these file names */
+	strcat(macBundleLogoURL, path);
+	strcat(macBundleLogoURL, "/EasyTAG_logo.xpm");
+
+	if (access(macBundleLogoURL, F_OK) != -1)
+	{
+	   Logo = gtk_image_new_from_file (macBundleLogoURL); 
+       gtk_box_pack_start(GTK_BOX(VBox),Logo,FALSE,TRUE,0);
+       gtk_misc_set_padding(GTK_MISC(Logo),2,2);
+	} else {
+			printf("Logo File does not exist : %s\n", macBundleLogoURL);
+	}
 
     /* Infos */
     Label = gtk_label_new(NULL);
@@ -617,9 +620,14 @@
     gtk_text_buffer_get_iter_at_offset(TextBuffer, &textIter, 0);
 
     // The file 'ChangeLog' to read
-    if ( (file=fopen(PACKAGE_DATA_DIR"/ChangeLog","r"))==0 )
+	/* MS : look inside Mac App Bundle*/
+	char macBundleChangesFileURL[PATH_MAX + 100] = "";
+	strcat(macBundleChangesFileURL, path);
+	strcat(macBundleChangesFileURL, "/ChangeLog");
+	
+    if ( (file=fopen(macBundleChangesFileURL,"r"))==0 )
     {
-        gchar *msg = g_strdup_printf(_("Can't open file '%s' (%s)\n"),PACKAGE_DATA_DIR"/ChangeLog",g_strerror(errno));
+        gchar *msg = g_strdup_printf(_("Can't open file '%s' (%s)\n"),macBundleChangesFileURL,g_strerror(errno));
         gtk_text_buffer_insert_with_tags_by_name(TextBuffer, &textIter,
                                                  msg, -1,
                                                  "monospace", "red_foreground", NULL);
@@ -699,8 +707,8 @@
 #ifdef WIN32
     wineasytag_notify_uri(WEBPAGE);
 #else
-    if (system("gnome-moz-remote "WEBPAGE)!=0)
-        if (system("x-www-browser "WEBPAGE)!=0)
-            system("www-browser "WEBPAGE);
+	/* MS - MacOSX build : open with the default Webbrowser under Mac OSX*/
+    if (system("open "WEBPAGE)==0)
+		printf("Error opening the Webpage\n");
 #endif
 }

