diff -pru cheese-git/libcheese/cheese-widget.c cheese-git-test/libcheese/cheese-widget.c
--- cheese-git/libcheese/cheese-widget.c	2011-07-22 23:45:18.711627103 +0200
+++ cheese-git-test/libcheese/cheese-widget.c	2011-07-23 01:32:09.078157946 +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;
diff -pru cheese-git/src/cheese-main.vala cheese-git-test/src/cheese-main.vala
--- cheese-git/src/cheese-main.vala	2011-07-22 23:45:18.735627277 +0200
+++ cheese-git-test/src/cheese-main.vala	2011-07-23 01:40:50.608363782 +0200
@@ -154,7 +154,8 @@ public class Cheese.Main : Gtk.Applicati
     Intl.bind_textdomain_codeset (Config.GETTEXT_PACKAGE, "UTF-8");
     Intl.textdomain (Config.GETTEXT_PACKAGE);
 
-    GtkClutter.init (ref args);
+    int gtk_clutter_init_status = GtkClutter.init (ref args);
+    if (gtk_clutter_init_status != 1) return 0;
 
     Cheese.Main app;
     app = new Cheese.Main ("org.gnome.Cheese", ApplicationFlags.FLAGS_NONE);
diff -pru cheese-git/tests/cheese-test-camera.c cheese-git-test/tests/cheese-test-camera.c
--- cheese-git/tests/cheese-test-camera.c	2011-07-22 23:45:18.737627291 +0200
+++ cheese-git-test/tests/cheese-test-camera.c	2011-07-23 01:32:12.841188416 +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);
diff -pru cheese-git/tests/cheese-test-chooser.c cheese-git-test/tests/cheese-test-chooser.c
--- cheese-git/tests/cheese-test-chooser.c	2011-07-22 23:45:18.737627291 +0200
+++ cheese-git-test/tests/cheese-test-chooser.c	2011-07-23 01:32:12.842188472 +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",
diff -pru cheese-git/tests/cheese-test-widget.c cheese-git-test/tests/cheese-test-widget.c
--- cheese-git/tests/cheese-test-widget.c	2011-07-22 23:45:18.737627291 +0200
+++ cheese-git-test/tests/cheese-test-widget.c	2011-07-23 01:32:12.842188472 +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);
