diff --git a/src/nautilus-view.c b/src/nautilus-view.c
index f6b9719..4965749 100644
--- a/src/nautilus-view.c
+++ b/src/nautilus-view.c
@@ -151,7 +151,7 @@ static guint signals[LAST_SIGNAL];
 
 static GdkAtom copied_files_atom;
 
-static char *scripts_directory_uri;
+static char *scripts_directory_uri = NULL;
 static int scripts_directory_uri_length;
 
 struct NautilusViewDetails
@@ -2265,14 +2265,14 @@ sort_directories_first_changed_callback (gpointer callback_data)
 	}
 }
 
-static void
+static gboolean
 set_up_scripts_directory_global (void)
 {
 	char *scripts_directory_path;
 	const char *override;
 
 	if (scripts_directory_uri != NULL) {
-		return;
+		return TRUE;
 	}
 
 	override = g_getenv ("GNOME22_USER_DIR");
@@ -2294,6 +2294,8 @@ set_up_scripts_directory_global (void)
 	}
 
 	g_free (scripts_directory_path);
+
+	return (scripts_directory_uri != NULL) ? TRUE : FALSE;
 }
 
 static void
@@ -2534,10 +2536,13 @@ nautilus_view_init (NautilusView *view)
 	gtk_scrolled_window_set_vadjustment (GTK_SCROLLED_WINDOW (view), NULL);
 	gtk_scrolled_window_set_shadow_type (GTK_SCROLLED_WINDOW (view), GTK_SHADOW_ETCHED_IN);
 
-	set_up_scripts_directory_global ();
-	scripts_directory = nautilus_directory_get_by_uri (scripts_directory_uri);
-	add_directory_to_scripts_directory_list (view, scripts_directory);
-	nautilus_directory_unref (scripts_directory);
+	if (set_up_scripts_directory_global () == TRUE) {
+		scripts_directory = nautilus_directory_get_by_uri (scripts_directory_uri);
+		add_directory_to_scripts_directory_list (view, scripts_directory);
+		nautilus_directory_unref (scripts_directory);
+	} else {
+		g_warning ("Ignoring scripts directory, it may be a broken link\n");
+	}
 
 	if (nautilus_should_use_templates_directory ()) {
 		templates_uri = nautilus_get_templates_directory_uri ();
