cheese r1210 - in trunk: . src



Author: fargiolas
Date: Sat Mar  7 09:16:31 2009
New Revision: 1210
URL: http://svn.gnome.org/viewvc/cheese?rev=1210&view=rev

Log:
Lock gdk mutex in photo-saved and video-saved callbacks
Those signals are emitted within a gstreamer callback so outside the
mainloop, hence the need for locking.
This fixes the flash locking issue and also the one about the grey
thumbview right after the flash.
Fixes bug #566098

Modified:
   trunk/ChangeLog
   trunk/src/cheese-window.c

Modified: trunk/src/cheese-window.c
==============================================================================
--- trunk/src/cheese-window.c	(original)
+++ trunk/src/cheese-window.c	Sat Mar  7 09:16:31 2009
@@ -404,22 +404,28 @@
 static void
 cheese_window_photo_saved_cb (CheeseWebcam *webcam, CheeseWindow *cheese_window)
 {
+  gdk_threads_enter ();
   /* TODO look at this g_free */
   g_free (cheese_window->photo_filename);
   cheese_window->photo_filename = NULL;
   gtk_widget_set_sensitive (cheese_window->take_picture, TRUE);
   gtk_widget_set_sensitive (cheese_window->take_picture_fullscreen, TRUE);
+  gdk_flush ();
+  gdk_threads_leave ();
 }
 
 static void
 cheese_window_video_saved_cb (CheeseWebcam *webcam, CheeseWindow *cheese_window)
 {
+  gdk_threads_enter ();
   /* TODO look at this g_free */
   g_free (cheese_window->video_filename);
   cheese_window->video_filename = NULL;
   gtk_action_group_set_sensitive (cheese_window->actions_effects, TRUE);
   gtk_widget_set_sensitive (cheese_window->take_picture, TRUE);
   gtk_widget_set_sensitive (cheese_window->take_picture_fullscreen, TRUE);
+  gdk_flush ();
+  gdk_threads_leave ();
 }
 
 static void



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]