summaryrefslogtreecommitdiffstats
path: root/main/audacious
diff options
context:
space:
mode:
authorWilliam Pitcock <nenolod@dereferenced.org>2011-02-04 19:14:07 -0600
committerWilliam Pitcock <nenolod@dereferenced.org>2011-02-04 19:14:07 -0600
commitd8bb6d69c0ed8f24f8b751f2ee564ca8e682d3e7 (patch)
tree8e457f524b2ed6dec611c5a09f9882e8aba353d7 /main/audacious
parent1a77b98f2894afe0fe51c8e5d9d1b44a71016b13 (diff)
downloadaports-d8bb6d69c0ed8f24f8b751f2ee564ca8e682d3e7.tar.bz2
aports-d8bb6d69c0ed8f24f8b751f2ee564ca8e682d3e7.tar.xz
main/audacious: merge in memory leak patches for upstream AUD-285 and AUD-286
Diffstat (limited to 'main/audacious')
-rw-r--r--main/audacious/APKBUILD10
-rw-r--r--main/audacious/audacious-2.4.3-id3v1-memleak-AUD-286.patch29
-rw-r--r--main/audacious/audacious-2.4.3-playlist-AUD-285.patch22
3 files changed, 58 insertions, 3 deletions
diff --git a/main/audacious/APKBUILD b/main/audacious/APKBUILD
index 24a9f7995..91422327d 100644
--- a/main/audacious/APKBUILD
+++ b/main/audacious/APKBUILD
@@ -2,7 +2,7 @@
# Maintainer: William Pitcock <nenolod@dereferenced.org>
pkgname=audacious
pkgver=2.4.3
-pkgrel=0
+pkgrel=1
pkgdesc="playlist-oriented media player with multiple interfaces"
url="http://audacious-media-player.org/"
arch="all"
@@ -11,7 +11,9 @@ depends=
makedepends="libmowgli-dev libmcs-dev libguess-dev gtk+-dev dbus-glib-dev libxml2-dev"
install=
subpackages="$pkgname-dev"
-source="http://distfiles.atheme.org/$pkgname-$pkgver.tgz"
+source="http://distfiles.atheme.org/$pkgname-$pkgver.tgz
+ audacious-2.4.3-playlist-AUD-285.patch
+ audacious-2.4.3-id3v1-memleak-AUD-286.patch"
_builddir="$srcdir"/$pkgname-$pkgver
@@ -51,4 +53,6 @@ package() {
make DESTDIR="$pkgdir" install
}
-md5sums="bd5d91900044a1159129c6feeea612c4 audacious-2.4.3.tgz"
+md5sums="bd5d91900044a1159129c6feeea612c4 audacious-2.4.3.tgz
+6dc34ff8fd74dcba06b6aa20c7cd493e audacious-2.4.3-playlist-AUD-285.patch
+3c8a23fd86ee8943ee938ef4cef9fa86 audacious-2.4.3-id3v1-memleak-AUD-286.patch"
diff --git a/main/audacious/audacious-2.4.3-id3v1-memleak-AUD-286.patch b/main/audacious/audacious-2.4.3-id3v1-memleak-AUD-286.patch
new file mode 100644
index 000000000..7dd3cdf63
--- /dev/null
+++ b/main/audacious/audacious-2.4.3-id3v1-memleak-AUD-286.patch
@@ -0,0 +1,29 @@
+diff -Nur audacious-2.4.3-orig/src/libaudtag/id3/id3v1.c audacious-2.4.3/src/libaudtag/id3/id3v1.c
+--- audacious-2.4.3-orig/src/libaudtag/id3/id3v1.c 2011-01-12 12:07:37.000000000 +0100
++++ audacious-2.4.3/src/libaudtag/id3/id3v1.c 2011-01-28 23:31:15.356395589 +0100
+@@ -96,8 +96,7 @@
+ gchar *tmp_artist = g_strconcat(artist, convert_to_utf8(read_char_data(f, 60)), NULL);
+ gchar *tmp_album = g_strconcat(album, convert_to_utf8(read_char_data(f, 60)), NULL);
+ vfs_fseek(f, -170, SEEK_END);
+- gchar *tmp_genre = g_new0(gchar, 30);
+- tmp_genre = convert_to_utf8(read_char_data(f, 30));
++ gchar *tmp_genre = convert_to_utf8(read_char_data(f, 30));
+ g_free(title);
+ g_free(artist);
+ g_free(album);
+@@ -105,13 +104,12 @@
+ artist = tmp_artist;
+ album = tmp_album;
+
+- if (g_strcmp0(tmp_genre, NULL) == 1)
++ if (tmp_genre != NULL)
+ {
+ tuple_associate_string(tuple, FIELD_GENRE, NULL, tmp_genre);
+ genre_set = TRUE;
++ g_free(tmp_genre);
+ }
+-
+- g_free(tmp_genre);
+ }
+
+ tuple_associate_string(tuple, FIELD_TITLE, NULL, title);
diff --git a/main/audacious/audacious-2.4.3-playlist-AUD-285.patch b/main/audacious/audacious-2.4.3-playlist-AUD-285.patch
new file mode 100644
index 000000000..b0b620dd2
--- /dev/null
+++ b/main/audacious/audacious-2.4.3-playlist-AUD-285.patch
@@ -0,0 +1,22 @@
+diff -Nur audacious-2.4.3-orig/src/audacious/playlist-new.c audacious-2.4.3/src/audacious/playlist-new.c
+--- audacious-2.4.3-orig/src/audacious/playlist-new.c 2011-01-12 12:07:37.000000000 +0100
++++ audacious-2.4.3/src/audacious/playlist-new.c 2011-01-28 23:28:26.557658545 +0100
+@@ -1846,14 +1846,14 @@
+ if (entries == 0)
+ return FALSE;
+
+- if (playlist->position != NULL && playlist->position->queued)
++ /* If we have a song in queue, jump to it, _then_ remove it from queue */
++ if (playlist->queued != NULL)
+ {
++ set_position (playlist, playlist->queued->data);
++
+ playlist->queued = g_list_remove(playlist->queued, playlist->position);
+ playlist->position->queued = FALSE;
+ }
+-
+- if (playlist->queued != NULL)
+- set_position (playlist, playlist->queued->data);
+ else if (cfg.shuffle)
+ {
+ if (! shuffle_next (playlist))