commit b2c8286a850e3ac0bdbc4d8fecb619bbd88612e2
Author: phantomjinx <p.g.richard...@phantomjinx.co.uk>
Date:   Sun Apr 22 22:48:35 2012 +0100

    Fix deadlock when mult metadata is available in sjcd
    
    * When preparing to rip a CD and cddb returns more than one choice for the
      CD's metadata, a dialog is displayed so user can choose which metadata to
      take. Pressing continue, causes a deadlock in application.
    
    * Surrounding gtk_dialog_run function with gdk_threads_enter/leave solves
      the deadlock by ensuring gtkpod's main loop owns the lock.

 plugins/sjcd/sj-main.c |    2 ++
 1 files changed, 2 insertions(+), 0 deletions(-)
---
diff --git a/plugins/sjcd/sj-main.c b/plugins/sjcd/sj-main.c
index 7458331..dd042b8 100644
--- a/plugins/sjcd/sj-main.c
+++ b/plugins/sjcd/sj-main.c
@@ -549,7 +549,9 @@ AlbumDetails* multiple_album_dialog(GList *albums)
   }
 
   gtk_widget_show_all (dialog);
+  gdk_threads_enter();
   response = gtk_dialog_run (GTK_DIALOG (dialog));
+  gdk_threads_leave();
   gtk_widget_hide (dialog);
 
   if (response == GTK_RESPONSE_DELETE_EVENT) {

------------------------------------------------------------------------------
For Developers, A Lot Can Happen In A Second.
Boundary is the first to Know...and Tell You.
Monitor Your Applications in Ultra-Fine Resolution. Try it FREE!
http://p.sf.net/sfu/Boundary-d2dvs2
_______________________________________________
gtkpod-cvs2 mailing list
gtkpod-cvs2@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/gtkpod-cvs2

Reply via email to