From 490414b6d669dc9838292cc50920e1889810f60a Mon Sep 17 00:00:00 2001 From: Michael Schwendt Date: Jan 28 2010 13:02:23 +0000 Subject: - Let set_tuple_cb() work on a copied tuple (the metadata updates flood is too racy IMO). - Fix tuple_copy(). --- diff --git a/audacious-2.2-set_tuple_cb.patch b/audacious-2.2-set_tuple_cb.patch new file mode 100644 index 0000000..ba91730 --- /dev/null +++ b/audacious-2.2-set_tuple_cb.patch @@ -0,0 +1,30 @@ +diff -Nur audacious-2.2-orig/src/audacious/playback.c audacious-2.2/src/audacious/playback.c +--- audacious-2.2-orig/src/audacious/playback.c 2009-11-22 23:43:47.000000000 +0100 ++++ audacious-2.2/src/audacious/playback.c 2010-01-28 13:52:03.000000000 +0100 +@@ -614,8 +614,10 @@ + + static void set_tuple (InputPlayback * playback, Tuple * tuple) + { ++ Tuple* copy = tuple_copy(tuple); ++ tuple_free(tuple); + /* playlist_entry_set_tuple must execute in main thread */ +- g_timeout_add (0, set_tuple_cb, tuple); ++ g_timeout_add (0, set_tuple_cb, copy); + } + + void ip_set_info (const gchar * title, gint length, gint bitrate, gint +diff -Nur audacious-2.2-orig/src/libaudcore/tuple.c audacious-2.2/src/libaudcore/tuple.c +--- audacious-2.2-orig/src/libaudcore/tuple.c 2009-11-22 23:43:47.000000000 +0100 ++++ audacious-2.2/src/libaudcore/tuple.c 2010-01-28 13:51:04.000000000 +0100 +@@ -236,9 +236,11 @@ + res = mowgli_heap_alloc(tuple_value_heap); + switch (src->type) { + case TUPLE_STRING: ++ res->type = TUPLE_STRING; + res->value.string = stringpool_get(src->value.string); + break; + case TUPLE_INT: ++ res->type = TUPLE_INT; + res->value.integer = src->value.integer; + break; + default: diff --git a/audacious.spec b/audacious.spec index 1f15dda..eae5c06 100644 --- a/audacious.spec +++ b/audacious.spec @@ -5,7 +5,7 @@ Name: audacious Version: 2.2 -Release: 8%{?dist} +Release: 9%{?dist} License: GPLv3 Summary: GTK2 based media player similar to XMMS @@ -23,6 +23,8 @@ Patch2: audacious-2.2-pkgconfig-libs.patch # for a problem that is known upstream, but 2.3-alpha1 doesn't fixed it yet # iplugin sorting order is important, too Patch3: audacious-2.2-multiple-decoders-per-ext.patch +# +Patch4: audacious-2.2-set_tuple_cb.patch BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) @@ -85,6 +87,7 @@ sed -i -e 's!\(build_stamp.*\)UNSUPPORTED VERSION!\1Fedora package!' src/audacio %patch1 -p1 -b .AUD-99 %patch2 -p1 -b .pkgconfig-libs %patch3 -p1 -b .multiple-decoders +%patch4 -p1 -b .set_tuple_cb # From .desktop files remove MIME types the base build of the # Fedora audacious-plugins package does not understand. @@ -200,6 +203,11 @@ gtk-update-icon-cache %{_datadir}/icons/hicolor &>/dev/null || : %changelog +* Thu Jan 28 2010 Michael Schwendt - 2.2-9 +- Let set_tuple_cb() work on a copied tuple + (the metadata updates flood is too racy IMO). +- Fix tuple_copy(). + * Wed Jan 27 2010 Michael Schwendt - 2.2-8 - Change build_stamp from "UNSUPPORTED VERSION" to "Fedora package". - Always add category AudioVideo to .desktop file for safety reasons.