rpms/rhythmbox/F-12 rb-webkit-crasher.patch, NONE, 1.1 rhythmbox.spec, 1.274, 1.275

Bastien Nocera hadess at fedoraproject.org
Thu Dec 10 15:45:24 UTC 2009


Author: hadess

Update of /cvs/pkgs/rpms/rhythmbox/F-12
In directory cvs1.fedora.phx.redhat.com:/tmp/cvs-serv8307

Modified Files:
	rhythmbox.spec 
Added Files:
	rb-webkit-crasher.patch 
Log Message:
* Thu Dec 10 2009 Bastien Nocera <bnocera at redhat.com> 0.12.6-2
- Fix crasher in WebKit when using the context pane (#540672)


rb-webkit-crasher.patch:
 ContextView.py |    8 ++++++++
 1 file changed, 8 insertions(+)

--- NEW FILE rb-webkit-crasher.patch ---
commit e93fd2d7afe1411a5a60052a4adecd6a56db5b7b
Author: Jonathan Matthew <jonathan at d14n.org>
Date:   Fri Nov 27 07:14:51 2009 +1000

    context: use an idle handler for track changes (bug #602140)
    
    The playing-song-changed signal is sometimes emitted on a streaming
    thread.  Calling into webkit on non-main threads causes it to crash
    pretty reliably, so we need to use an idle handler to process it on the
    main thread.

diff --git a/plugins/context/context/ContextView.py b/plugins/context/context/ContextView.py
index 7e2c0d6..e204fc4 100644
--- a/plugins/context/context/ContextView.py
+++ b/plugins/context/context/ContextView.py
@@ -174,6 +174,14 @@ class ContextView (gobject.GObject):
                 self.top_five_list[(i,)] = ("%d. " % (i+1), track)
 
     def playing_changed_cb (self, playing, user_data):
+        # this sometimes happens on a streaming thread, so we need to
+        # move it to the main thread
+        gobject.idle_add (self.playing_changed_idle_cb)
+
+    def playing_changed_idle_cb (self):
+        if self.sp is None:
+            return
+
         playing_entry = self.sp.get_playing_entry ()
         if playing_entry is None:
             return


Index: rhythmbox.spec
===================================================================
RCS file: /cvs/pkgs/rpms/rhythmbox/F-12/rhythmbox.spec,v
retrieving revision 1.274
retrieving revision 1.275
diff -u -p -r1.274 -r1.275
--- rhythmbox.spec	22 Nov 2009 15:57:41 -0000	1.274
+++ rhythmbox.spec	10 Dec 2009 15:45:23 -0000	1.275
@@ -3,7 +3,7 @@
 Name: rhythmbox
 Summary: Music Management Application
 Version: 0.12.6
-Release: 1%{?dist}
+Release: 2%{?dist}
 License: GPLv2+ with exceptions and GFDL
 Group: Applications/Multimedia
 URL: http://projects.gnome.org/rhythmbox/
@@ -52,6 +52,9 @@ ExcludeArch:    s390 s390x
 
 # https://bugzilla.gnome.org/show_bug.cgi?id=596615
 Patch0: rb-no-HEAD-for-podcasts.patch
+# https://bugzilla.redhat.com/show_bug.cgi?id=540672
+# https://bugzilla.gnome.org/show_bug.cgi?id=602140
+Patch1: rb-webkit-crasher.patch
 
 %description
 Rhythmbox is an integrated music management application based on the powerful
@@ -86,6 +89,7 @@ from, and sending media to UPnP/DLNA net
 %setup -q
 
 %patch0 -p1 -b .http-head
+%patch1 -p1 -b .webkit
 
 # Use the installed louie, not the one in Coherence
 find plugins/coherence/upnp_coherence/ -type f -exec sed -i 's/coherence.extern.louie as louie/louie/' '{}' ';'
@@ -217,6 +221,9 @@ fi
 %{_libdir}/rhythmbox/plugins/upnp_coherence
 
 %changelog
+* Thu Dec 10 2009 Bastien Nocera <bnocera at redhat.com> 0.12.6-2
+- Fix crasher in WebKit when using the context pane (#540672)
+
 * Sun Nov 22 2009 Bastien Nocera <bnocera at redhat.com> 0.12.6-1
 - Update to 0.12.6
 




More information about the fedora-extras-commits mailing list