[audacious-plugins] - Merge fix for AUD-289.

Michael Schwendt mschwendt at fedoraproject.org
Fri Jan 28 22:53:03 UTC 2011


commit 41a5ff481e64f93bf315ed4fa23f0727827fb8a3
Author: Michael Schwendt <mschwendt at fedoraproject.org>
Date:   Fri Jan 28 23:52:51 2011 +0100

    - Merge fix for AUD-289.

 audacious-plugins-2.4.3-psf-AUD-289.patch |   56 +++++++++++++++++++++++++++++
 audacious-plugins.spec                    |   10 ++++-
 2 files changed, 64 insertions(+), 2 deletions(-)
---
diff --git a/audacious-plugins-2.4.3-psf-AUD-289.patch b/audacious-plugins-2.4.3-psf-AUD-289.patch
new file mode 100644
index 0000000..7d8664c
--- /dev/null
+++ b/audacious-plugins-2.4.3-psf-AUD-289.patch
@@ -0,0 +1,56 @@
+diff -Nur audacious-plugins-2.4.3-orig/src/psf/plugin.c audacious-plugins-2.4.3/src/psf/plugin.c
+--- audacious-plugins-2.4.3-orig/src/psf/plugin.c	2011-01-12 12:13:26.000000000 +0100
++++ audacious-plugins-2.4.3/src/psf/plugin.c	2011-01-28 23:47:46.829315597 +0100
+@@ -96,6 +96,7 @@
+ 	return AO_SUCCESS;
+ }
+ 
++static GStaticMutex mutex = G_STATIC_MUTEX_INIT;
+ static gint seek = 0;
+ gboolean stop_flag = FALSE;
+ 
+@@ -182,7 +183,6 @@
+ 			}
+ 			else
+ 			{
+-				data->output->close_audio();
+ 				break;
+ 			}
+ 		}
+@@ -192,15 +192,17 @@
+ 		while (!stop_flag && data->output->buffer_playing())
+ 			g_usleep(10000);
+ 
+-		data->output->close_audio();
+-
+ 		break;
+ 	}
+ 
++    g_static_mutex_lock (& mutex);
++    stop_flag = TRUE;
++    data->output->close_audio ();
++    g_static_mutex_unlock (& mutex);
++
+ 	g_free(buffer);
+ 	g_free(path);
+ 
+-	stop_flag = TRUE;
+ 	return ! error;
+ }
+ 
+@@ -232,8 +234,13 @@
+ 
+ void psf2_Stop(InputPlayback *playback)
+ {
+-	stop_flag = TRUE;
+-	playback->output->abort_write();
++    g_static_mutex_lock (& mutex);
++    if (! stop_flag)
++    {
++        stop_flag = TRUE;
++        playback->output->abort_write ();
++    }
++    g_static_mutex_unlock (& mutex);
+ }
+ 
+ void psf2_pause(InputPlayback *playback, gshort pause)
diff --git a/audacious-plugins.spec b/audacious-plugins.spec
index 01cf4e2..984161c 100644
--- a/audacious-plugins.spec
+++ b/audacious-plugins.spec
@@ -1,4 +1,4 @@
-%if 0%{?fedora} > 14
+%if 0%{?fedora} > 13
 %global aud_plugin_api %(grep '[ ]*#define[ ]*__AUDACIOUS_PLUGIN_API__' %{_includedir}/audacious/plugin.h 2>/dev/null | sed 's!.*__AUDACIOUS_PLUGIN_API__[ ]*\\([0-9]\\+\\).*!\\1!')
 %if %(test -f %{_includedir}/audacious/plugin.h && echo 1 || echo 0)
 Requires: audacious(plugin-api) = %{aud_plugin_api}
@@ -13,7 +13,7 @@ Requires: audacious >= %{aud_ver}
 
 Name: audacious-plugins
 Version: 2.4.3
-Release: 4%{?dist}
+Release: 5%{?dist}
 Summary: Plugins for the Audacious audio player
 Group: Applications/Multimedia
 URL: http://audacious-media-player.org/
@@ -33,6 +33,8 @@ Patch0: audacious-plugins-2.0.1-xmms-skindir.patch
 Patch1: audacious-plugins-2.4-libdir.patch
 # reported/mentioned upstream
 Patch2: audacious-plugins-2.4.3-adplug-invalid.patch
+# post-2.4.3
+Patch3: audacious-plugins-2.4.3-psf-AUD-289.patch
 #
 Patch8: audacious-plugins-2.4.2-libnotify07.patch
 
@@ -149,6 +151,7 @@ providers may build it with libsidplay 2 instead.
 %patch0 -p1 -b .xmms-skindir
 %patch1 -p1 -b .libdir
 %patch2 -p1 -b .adplug-invalid
+%patch3 -p1 -b .psf-fix
 %if 0%{?fedora} > 14
 %patch8 -p1 -b .libnotify07
 %endif
@@ -250,6 +253,9 @@ update-desktop-database &> /dev/null || :
 
 
 %changelog
+* Fri Jan 28 2011 Michael Schwendt <mschwendt at fedoraproject.org> - 2.4.3-5
+- Merge fix for AUD-289.
+
 * Thu Jan 27 2011 Michael Schwendt <mschwendt at fedoraproject.org> - 2.4.3-4
 - Require specific audacious(plugin-api) capability.
 - Drop Obsoletes for audacious-plugins-arts (last in dist-f11-updates).


More information about the scm-commits mailing list