--- gst/gstpluginloader.c.orig	2011-01-06 09:15:31.000000000 -0800
+++ gst/gstpluginloader.c	2011-04-10 19:06:06.000000000 -0700
@@ -353,7 +353,20 @@ plugin_loader_create_blacklist_plugin (G
 static gboolean
 gst_plugin_loader_try_helper (GstPluginLoader * loader, gchar * location)
 {
-  char *argv[] = { location, (char *) "-l", NULL };
+  char *argv[] = { 
+#ifdef __APPLE__
+#if defined(__x86_64__)
+      "/usr/bin/arch", "-x86_64",
+#elif defined(__i386__)
+      "/usr/bin/arch", "-i386",
+#elif defined(__ppc__)
+      "/usr/bin/arch", "-ppc",
+#elif defined(__ppc64__)
+      "/usr/bin/arch", "-ppc64",
+#endif
+#endif
+      location, (char *) "-l", NULL
+  };
 
   GST_LOG ("Trying to spawn gst-plugin-scanner helper at %s", location);
   if (!g_spawn_async_with_pipes (NULL, argv, NULL,
