Date: Tuesday, January 8, 2013 @ 21:17:57 Author: bisson Revision: 174922
improved patch as per http://redmine.audacious-media-player.org/issues/239 Modified: audacious-plugins/trunk/PKGBUILD audacious-plugins/trunk/libcdio.patch ---------------+ PKGBUILD | 4 +- libcdio.patch | 94 +++++++++++++++++++++++++++++++++++++------------------- 2 files changed, 65 insertions(+), 33 deletions(-) Modified: PKGBUILD =================================================================== --- PKGBUILD 2013-01-09 00:32:15 UTC (rev 174921) +++ PKGBUILD 2013-01-09 02:17:57 UTC (rev 174922) @@ -5,7 +5,7 @@ pkgname=audacious-plugins pkgver=3.3.3 -pkgrel=2 +pkgrel=3 pkgdesc='Plugins for Audacious' url='http://audacious-media-player.org/' license=('custom:BSD' 'GPL') @@ -46,7 +46,7 @@ source=("http://distfiles.audacious-media-player.org/${pkgname}-${pkgver}.tar.bz2" 'libcdio.patch') sha1sums=('c7384a2de6e3305f3c3271bb66344f0cbb9bef0e' - '82253eff3cf268c3fa48d9e86150af44fe0e8f0e') + '56977393425c98183d8c69540ac80545fc4ba19a') build() { cd "${srcdir}/${pkgname}-${pkgver}" Modified: libcdio.patch =================================================================== --- libcdio.patch 2013-01-09 00:32:15 UTC (rev 174921) +++ libcdio.patch 2013-01-09 02:17:57 UTC (rev 174922) @@ -1,16 +1,39 @@ -diff -aur old/src/cdaudio-ng/cdaudio-ng.c new/src/cdaudio-ng/cdaudio-ng.c ---- old/src/cdaudio-ng/cdaudio-ng.c 2012-12-10 23:49:06.000000000 +0000 -+++ new/src/cdaudio-ng/cdaudio-ng.c 2013-01-08 14:18:19.760077951 +0000 -@@ -26,7 +26,7 @@ +diff --git a/src/cdaudio-ng/cdaudio-ng.c b/src/cdaudio-ng/cdaudio-ng.c +index 925b847..e986839 100644 +--- a/src/cdaudio-ng/cdaudio-ng.c ++++ b/src/cdaudio-ng/cdaudio-ng.c +@@ -26,11 +26,16 @@ #include <cdio/cdio.h> #include <cdio/cdtext.h> #include <cdio/track.h> -#include <cdio/cdda.h> -+#include <cdio/paranoia/cdda.h> #include <cdio/audio.h> #include <cdio/sector.h> #include <cdio/cd_types.h> -@@ -622,23 +622,24 @@ + ++#if LIBCDIO_VERSION_NUM >= 90 ++#include <cdio/paranoia/cdda.h> ++#else ++#include <cdio/cdda.h> ++#endif ++ + /* libcdio's header files #define these */ + #undef PACKAGE + #undef PACKAGE_BUGREPORT +@@ -269,9 +274,9 @@ static void cdaudio_set_strinfo (trackinfo_t * t, + const char * performer, const char * name, + const char * genre) + { +- g_strlcpy (t->performer, performer, DEF_STRING_LEN); +- g_strlcpy (t->name, name, DEF_STRING_LEN); +- g_strlcpy (t->genre, genre, DEF_STRING_LEN); ++ g_strlcpy (t->performer, performer ? performer : "", DEF_STRING_LEN); ++ g_strlcpy (t->name, name ? name : "", DEF_STRING_LEN); ++ g_strlcpy (t->genre, genre ? genre : "", DEF_STRING_LEN); + } + + /* thread safe (mutex may be locked) */ +@@ -622,23 +627,32 @@ static void scan_cd (void) } /* get trackinfo[0] cdtext information (the disc) */ @@ -19,9 +42,13 @@ { AUDDBG ("getting cd-text information for disc\n"); - cdtext_t *pcdtext = cdio_get_cdtext (pcdrom_drive->p_cdio, 0); -- if (pcdtext == NULL || pcdtext->field[CDTEXT_TITLE] == NULL) ++#if LIBCDIO_VERSION_NUM >= 90 + pcdtext = cdio_get_cdtext (pcdrom_drive->p_cdio); + if (pcdtext == NULL) ++#else ++ pcdtext = cdio_get_cdtext (pcdrom_drive->p_cdio, 0); + if (pcdtext == NULL || pcdtext->field[CDTEXT_TITLE] == NULL) ++#endif { AUDDBG ("no cd-text available for disc\n"); } @@ -34,31 +61,33 @@ - field[CDTEXT_TITLE] : "", - pcdtext->field[CDTEXT_GENRE] ? pcdtext-> - field[CDTEXT_GENRE] : ""); -+ cdtext_get(pcdtext, CDTEXT_FIELD_PERFORMER, 0) ? -+ cdtext_get(pcdtext, CDTEXT_FIELD_PERFORMER, 0) : "", -+ cdtext_get(pcdtext, CDTEXT_FIELD_TITLE, 0) ? -+ cdtext_get(pcdtext, CDTEXT_FIELD_TITLE, 0) : "", -+ cdtext_get(pcdtext, CDTEXT_FIELD_GENRE, 0) ? -+ cdtext_get(pcdtext, CDTEXT_FIELD_GENRE, 0) : ""); ++#if LIBCDIO_VERSION_NUM >= 90 ++ cdtext_get(pcdtext, CDTEXT_FIELD_PERFORMER, 0), ++ cdtext_get(pcdtext, CDTEXT_FIELD_TITLE, 0), ++ cdtext_get(pcdtext, CDTEXT_FIELD_GENRE, 0)); ++#else ++ pcdtext->field[CDTEXT_PERFORMER], ++ pcdtext->field[CDTEXT_TITLE], ++ pcdtext->field[CDTEXT_GENRE]); ++#endif } } -@@ -646,27 +647,15 @@ +@@ -646,7 +660,7 @@ static void scan_cd (void) bool_t cdtext_was_available = FALSE; for (trackno = firsttrackno; trackno <= lasttrackno; trackno++) { - cdtext_t *pcdtext = NULL; -- if (aud_get_bool ("CDDA", "use_cdtext")) -- { -- AUDDBG ("getting cd-text information for track %d\n", trackno); -- pcdtext = cdio_get_cdtext (pcdrom_drive->p_cdio, trackno); -- if (pcdtext == NULL || pcdtext->field[CDTEXT_PERFORMER] == NULL) -- { -- AUDDBG ("no cd-text available for track %d\n", trackno); -- pcdtext = NULL; -- } -- } -- ++#if LIBCDIO_VERSION_NUM < 90 + if (aud_get_bool ("CDDA", "use_cdtext")) + { + AUDDBG ("getting cd-text information for track %d\n", trackno); +@@ -657,16 +671,20 @@ static void scan_cd (void) + pcdtext = NULL; + } + } ++#endif + if (pcdtext != NULL) { cdaudio_set_strinfo (&trackinfo[trackno], @@ -68,12 +97,15 @@ - field[CDTEXT_TITLE] : "", - pcdtext->field[CDTEXT_GENRE] ? pcdtext-> - field[CDTEXT_GENRE] : ""); -+ cdtext_get(pcdtext, CDTEXT_FIELD_PERFORMER, trackno) ? -+ cdtext_get(pcdtext, CDTEXT_FIELD_PERFORMER, trackno) : "", -+ cdtext_get(pcdtext, CDTEXT_FIELD_TITLE, trackno) ? -+ cdtext_get(pcdtext, CDTEXT_FIELD_TITLE, trackno) : "", -+ cdtext_get(pcdtext, CDTEXT_FIELD_GENRE, trackno) ? -+ cdtext_get(pcdtext, CDTEXT_FIELD_GENRE, trackno) : ""); ++#if LIBCDIO_VERSION_NUM >= 90 ++ cdtext_get(pcdtext, CDTEXT_FIELD_PERFORMER, trackno), ++ cdtext_get(pcdtext, CDTEXT_FIELD_TITLE, trackno), ++ cdtext_get(pcdtext, CDTEXT_FIELD_GENRE, trackno)); ++#else ++ pcdtext->field[CDTEXT_PERFORMER], ++ pcdtext->field[CDTEXT_TITLE], ++ pcdtext->field[CDTEXT_GENRE]); ++#endif cdtext_was_available = TRUE; } else
