--- cheese-3.0.2/src/cheese-main.c	2011-07-18 02:39:54.000000000 +0200
+++ cheese-3.0.2-detect-clutter-init-failure/src/cheese-main.c	2011-07-22 17:12:32.132885920 +0200
@@ -340,7 +340,7 @@ gint _vala_main (gchar** args, int args_
 	bindtextdomain (GETTEXT_PACKAGE, PACKAGE_LOCALEDIR);
 	bind_textdomain_codeset (GETTEXT_PACKAGE, "UTF-8");
 	textdomain (GETTEXT_PACKAGE);
-	gtk_clutter_init (&args_length1, &args);
+	if (gtk_clutter_init (&args_length1, &args) != CLUTTER_INIT_SUCCESS) return 0;
 	_tmp0_ = cheese_main_new ("org.gnome.Cheese", G_APPLICATION_FLAGS_NONE);
 	_g_object_unref0 (app);
 	app = _tmp0_;
--- cheese-3.0.2/libcheese/cheese-widget.c	2011-06-15 04:56:13.000000000 +0200
+++ cheese-3.0.2-detect-clutter-init-failure/libcheese/cheese-widget.c	2011-07-22 17:19:12.038501047 +0200
@@ -385,7 +385,7 @@ cheese_widget_class_init (CheeseWidgetCl
   GObjectClass   *object_class = G_OBJECT_CLASS (klass);
   GtkWidgetClass *widget_class = GTK_WIDGET_CLASS (klass);
 
-  gtk_clutter_init (NULL, NULL);
+  if (gtk_clutter_init (NULL, NULL) != CLUTTER_INIT_SUCCESS) return;
   clutter_gst_init (NULL, NULL);
 
   object_class->finalize = cheese_widget_finalize;
--- cheese-3.0.2/tests/cheese-test-camera.c	2011-06-15 04:56:13.000000000 +0200
+++ cheese-3.0.2-detect-clutter-init-failure/tests/cheese-test-camera.c	2011-07-22 17:20:19.137598935 +0200
@@ -42,7 +42,7 @@ main (int argc, char **argv)
   bind_textdomain_codeset (GETTEXT_PACKAGE, "UTF-8");
   textdomain (GETTEXT_PACKAGE);
 
-  gtk_clutter_init (&argc, &argv);
+  if (gtk_clutter_init (&argc, &argv) != CLUTTER_INIT_SUCCESS) return 1;
 
   window = gtk_window_new (GTK_WINDOW_TOPLEVEL);
   gtk_window_set_default_size (GTK_WINDOW (window), 400, 300);
--- cheese-3.0.2/tests/cheese-test-chooser.c	2011-06-15 04:56:13.000000000 +0200
+++ cheese-3.0.2-detect-clutter-init-failure/tests/cheese-test-chooser.c	2011-07-22 17:20:38.707634186 +0200
@@ -35,7 +35,7 @@ main (int argc, char **argv)
   bind_textdomain_codeset (GETTEXT_PACKAGE, "UTF-8");
   textdomain (GETTEXT_PACKAGE);
 
-  gtk_clutter_init (&argc, &argv);
+  if (gtk_clutter_init (&argc, &argv) != CLUTTER_INIT_SUCCESS) return 1;
 
   window = cheese_avatar_chooser_new ();
   g_signal_connect (G_OBJECT (window), "response",
--- cheese-3.0.2/tests/cheese-test-widget.c	2011-06-15 04:56:13.000000000 +0200
+++ cheese-3.0.2-detect-clutter-init-failure/tests/cheese-test-widget.c	2011-07-22 17:20:56.986669274 +0200
@@ -30,7 +30,7 @@ main (int argc, char **argv)
   bind_textdomain_codeset (GETTEXT_PACKAGE, "UTF-8");
   textdomain (GETTEXT_PACKAGE);
 
-  gtk_clutter_init (&argc, &argv);
+  if (gtk_clutter_init (&argc, &argv) != CLUTTER_INIT_SUCCESS) return 1;
 
   window = gtk_window_new (GTK_WINDOW_TOPLEVEL);
   gtk_window_set_default_size (GTK_WINDOW (window), 400, 300);
