PKGBUILDs/community/xbmc/cdio.patch
2013-01-15 14:06:31 +00:00

39 lines
1.5 KiB
Diff

diff -wbBur xbmc-11.0/xbmc/music/tags/MusicInfoTagLoaderCDDA.cpp xbmc-11.0.my/xbmc/music/tags/MusicInfoTagLoaderCDDA.cpp
--- xbmc-11.0/xbmc/music/tags/MusicInfoTagLoaderCDDA.cpp 2012-03-22 02:07:50.000000000 +0400
+++ xbmc-11.0.my/xbmc/music/tags/MusicInfoTagLoaderCDDA.cpp 2013-01-09 14:40:10.670040454 +0400
@@ -27,6 +27,10 @@
#include "storage/MediaManager.h"
#include "utils/log.h"
+#define CDTEXT_TITLE CDTEXT_FIELD_TITLE
+#define CDTEXT_PERFORMER CDTEXT_FIELD_PERFORMER
+#define CDTEXT_GENRE CDTEXT_FIELD_GENRE
+
using namespace MUSIC_INFO;
#ifdef HAS_DVD_DRIVE
diff -wbBur xbmc-11.0/xbmc/storage/cdioSupport.cpp xbmc-11.0.my/xbmc/storage/cdioSupport.cpp
--- xbmc-11.0/xbmc/storage/cdioSupport.cpp 2012-03-22 02:07:50.000000000 +0400
+++ xbmc-11.0.my/xbmc/storage/cdioSupport.cpp 2013-01-09 14:51:40.276801092 +0400
@@ -648,15 +648,18 @@
CSingleLock lock(*m_cdio);
// Get the CD-Text , if any
- cdtext_t *pcdtext = (cdtext_t *)::cdio_get_cdtext(cdio, trackNum);
+ cdtext_t *pcdtext = (cdtext_t *)::cdio_get_cdtext(cdio);
if (pcdtext == NULL)
return ;
// same ids used in libcdio and for our structure + the ids are consecutive make this copy loop safe.
for (int i = 0; i < MAX_CDTEXT_FIELDS; i++)
- if (pcdtext->field[i])
- xcdt[(cdtext_field_t)i] = pcdtext->field[(cdtext_field_t)i];
+ {
+ char *data = cdtext_get(pcdtext, (cdtext_field_t)i, trackNum);
+ if (data != NULL)
+ xcdt[(cdtext_field_t)i] = data;
+ }
}
CCdInfo* CCdIoSupport::GetCdInfo(char* cDeviceFileName)