All pastes #1945880 Raw Edit

teuf

public text v1 · immutable
#1945880 ·published 2010-09-21 15:47 UTC
rendered paste body
diff --git a/src/itdb.h b/src/itdb.hindex e8d7547..a7cb040 100644--- a/src/itdb.h+++ b/src/itdb.h@@ -1253,22 +1253,22 @@ typedef enum  */ typedef enum {-    ITDB_MEDIATYPE_AUDIO        = 0x000001,-    ITDB_MEDIATYPE_MOVIE        = 0x000002,-    ITDB_MEDIATYPE_PODCAST      = 0x000004,-    ITDB_MEDIATYPE_VIDEO_PODCAST= 0x000006,-    ITDB_MEDIATYPE_AUDIOBOOK    = 0x000008,-    ITDB_MEDIATYPE_MUSICVIDEO   = 0x000020,-    ITDB_MEDIATYPE_TVSHOW       = 0x000040,-    ITDB_MEDIATYPE_MUSIC_TVSHOW = 0x000060,-    ITDB_MEDIATYPE_RINGTONE     = 0x004000,-    ITDB_MEDIATYPE_RENTAL       = 0x008000,-    ITDB_MEDIATYPE_ITUNES_EXTRA = 0x010000,-    ITDB_MEDIATYPE_MEMO         = 0x100000,-    ITDB_MEDIATYPE_ITUNES_U     = 0x200000,-    ITDB_MEDIATYPE_EPUB_BOOK    = 0x400000+    ITDB_MEDIATYPE_AUDIO        = (1 << 0),+    ITDB_MEDIATYPE_MOVIE        = (1 << 1),+    ITDB_MEDIATYPE_PODCAST      = (1 << 2),+    ITDB_MEDIATYPE_AUDIOBOOK    = (1 << 3),+    ITDB_MEDIATYPE_MUSICVIDEO   = (1 << 5),+    ITDB_MEDIATYPE_TVSHOW       = (1 << 6),+    ITDB_MEDIATYPE_RINGTONE     = (1 << 14),+    ITDB_MEDIATYPE_RENTAL       = (1 << 15),+    ITDB_MEDIATYPE_ITUNES_EXTRA = (1 << 16),+    ITDB_MEDIATYPE_MEMO         = (1 << 20),+    ITDB_MEDIATYPE_ITUNES_U     = (1 << 21),+    ITDB_MEDIATYPE_EPUB_BOOK    = (1 << 22) } Itdb_Mediatype; +#define ITDB_MEDIATYPE_VIDEO_PODCAST (ITDB_MEDIATYPE_MOVIE | ITDB_MEDIATYPE_PODCAST)+#define ITDB_MEDIATYPE_MUSIC_TVSHOW (ITDB_MEDIATYPE_MUSICVIDEO | ITDB_MEDIATYPE_TVSHOW) typedef struct _Itdb_Track_Private Itdb_Track_Private; /**  * Itdb_Track:diff --git a/src/itdb_itunesdb.c b/src/itdb_itunesdb.cindex ea3a7ad..bae2844 100644--- a/src/itdb_itunesdb.c+++ b/src/itdb_itunesdb.c@@ -6472,9 +6472,8 @@ static gboolean write_hths (FExport *fexp) 		put32lint_seek(cts, cts->pos, track_seek); 		g_return_val_if_fail (write_rths(cts, track), FALSE); -		if (track->mediatype == ITDB_MEDIATYPE_AUDIOBOOK ||-		    track->mediatype == ITDB_MEDIATYPE_VIDEO_PODCAST ||-		    track->mediatype == ITDB_MEDIATYPE_PODCAST)+		if ((track->mediatype & ITDB_MEDIATYPE_AUDIOBOOK) ||+		    (track->mediatype & ITDB_MEDIATYPE_PODCAST)) 			nonstdtrackcnt++;  		/* Go to the offset for the next track */@@ -6542,9 +6541,8 @@ static gboolean write_lphs (WContents *cts, Itdb_Playlist *pl) 			id = tr->dbid; 			ctr = current_track->data; 			/* Count the number of podcasts and audiobooks for later use */-			if (tr->mediatype == ITDB_MEDIATYPE_AUDIOBOOK ||-			    tr->mediatype == ITDB_MEDIATYPE_VIDEO_PODCAST ||-			    tr->mediatype == ITDB_MEDIATYPE_PODCAST)+			if ((tr->mediatype & ITDB_MEDIATYPE_AUDIOBOOK) ||+			    (tr->mediatype & ITDB_MEDIATYPE_PODCAST)) 				nonstdtrackcnt++;  			while( id != ctr->dbid)diff --git a/src/itdb_playlist.c b/src/itdb_playlist.cindex 5b1e8d8..85cef97 100644--- a/src/itdb_playlist.c+++ b/src/itdb_playlist.c@@ -1595,7 +1595,7 @@ gboolean itdb_playlist_is_audiobooks (Itdb_Playlist *pl)   for (tl = pl->members; tl; tl = tl->next)   {     track = tl->data;-    if (track->mediatype != ITDB_MEDIATYPE_AUDIOBOOK)+    if (!(track->mediatype & ITDB_MEDIATYPE_AUDIOBOOK))     {       return FALSE;     }diff --git a/src/itdb_sqlite.c b/src/itdb_sqlite.cindex 380b5a1..4825cb2 100644--- a/src/itdb_sqlite.c+++ b/src/itdb_sqlite.c@@ -1256,8 +1256,6 @@ static int mk_Library(Itdb_iTunesDB *itdb, 	/* if it's a movie, music video or tv show */ 	if ((track->mediatype & ITDB_MEDIATYPE_MOVIE) 		|| (track->mediatype & ITDB_MEDIATYPE_MUSICVIDEO)-		|| (track->mediatype & ITDB_MEDIATYPE_VIDEO_PODCAST)-		|| (track->mediatype & ITDB_MEDIATYPE_MUSIC_TVSHOW) 		|| (track->mediatype & ITDB_MEDIATYPE_TVSHOW)) { 	    /* printf("[%s] -- inserting into \"video_info\"\n", __func__); */ 	    res = sqlite3_reset(stmt_video_info);