summaryrefslogtreecommitdiff
path: root/tools
diff options
context:
space:
mode:
Diffstat (limited to 'tools')
-rw-r--r--tools/playlist.c11
-rw-r--r--tools/playlist.h3
2 files changed, 11 insertions, 3 deletions
diff --git a/tools/playlist.c b/tools/playlist.c
index 3f05e88a..9380b413 100644
--- a/tools/playlist.c
+++ b/tools/playlist.c
@@ -4,7 +4,7 @@
* See the main source file 'xineliboutput.c' for copyright information and
* how to reach the author.
*
- * $Id: playlist.c,v 1.8 2008-01-10 23:30:37 phelin Exp $
+ * $Id: playlist.c,v 1.9 2008-01-10 23:32:18 phelin Exp $
*
*/
@@ -162,7 +162,7 @@ class cID3Scanner : public cThread
else if(!strncasecmp(pt, "TITLE=", 6) && strlen(pt) > 7)
Item->Title = (pt+6);
else if(!strncasecmp(pt, "TRACKNUMBER=", 12) && strlen(pt) > 12)
- Item->Position = atoi(pt+12);
+ Item->Tracknumber = (pt+12);
}
}
} else if(xc.IsAudioFile(Item->Filename)) {
@@ -170,6 +170,7 @@ class cID3Scanner : public cThread
"Artist: %%a\\r\\n"
"Album: %%l\\r\\n"
"Title: %%t\\r\\n"
+ "Tracknumber: %%n\\r\\n\""
" \"%s\"",
shell_escape(Item->Filename, '\"'));
cPipe p;
@@ -184,6 +185,8 @@ class cID3Scanner : public cThread
Item->Album = (pt+7);
if(!strncmp(pt, "Title: ", 7) && strlen(pt) > 8)
Item->Title = (pt+7);
+ if(!strncmp(pt, "Tracknumber: ", 12) && strlen(pt) > 13)
+ Item->Tracknumber = (pt+12);
}
}
}
@@ -460,6 +463,8 @@ bool cPlaylist::StoreCache(void)
fprintf(f, "File%d=%s\r\n", entries, *Filename);
if(*i->Title && (*i->Title)[0])
fprintf(f, "Title%d=%s\r\n", entries, *i->Title);
+ if(*i->Tracknumber && (*i->Tracknumber)[0])
+ fprintf(f, "Tracknumber%d=%s\r\n", entries, *i->Tracknumber);
if(*i->Artist && (*i->Artist)[0])
fprintf(f, "Artist%d=%s\r\n", entries, *i->Artist);
if(*i->Album && (*i->Album)[0])
@@ -509,6 +514,8 @@ bool cPlaylist::ReadCache(void)
}
} else if(it && !strncmp(pt, "Title", 5)) {
it->Title = strchrnext(pt, '=');
+ } else if(it && !strncmp(pt, "Tracknumber", 11)) {
+ it->Tracknumber = strchrnext(pt, '=');
} else if(it && !strncmp(pt, "Artist", 6)) {
it->Artist = strchrnext(pt, '=');
} else if(it && !strncmp(pt, "Album", 5)) {
diff --git a/tools/playlist.h b/tools/playlist.h
index 2cfb68ac..f86dbfb1 100644
--- a/tools/playlist.h
+++ b/tools/playlist.h
@@ -4,7 +4,7 @@
* See the main source file 'xineliboutput.c' for copyright information and
* how to reach the author.
*
- * $Id: playlist.h,v 1.5 2008-01-10 23:30:37 phelin Exp $
+ * $Id: playlist.h,v 1.6 2008-01-10 23:32:18 phelin Exp $
*
*/
@@ -37,6 +37,7 @@ class cPlaylistItem : public cListObject
// Metainfo (ID3 etc.)
cString Title;
+ cString Tracknumber;
cString Artist;
cString Album;