summaryrefslogtreecommitdiff
path: root/apps
diff options
context:
space:
mode:
authorRobert Kukla <roolku@rockbox.org>2007-03-02 21:49:42 +0000
committerRobert Kukla <roolku@rockbox.org>2007-03-02 21:49:42 +0000
commit79a2a936a289ed7dc6e997b6f8fdd53d45a48b57 (patch)
tree32c00625190da49f11a0a274bed4f3bb7a6f118d /apps
parent2187e815e20d8127df077ef02886867ff8dcaed4 (diff)
downloadrockbox-79a2a936a289ed7dc6e997b6f8fdd53d45a48b57.zip
rockbox-79a2a936a289ed7dc6e997b6f8fdd53d45a48b57.tar.gz
rockbox-79a2a936a289ed7dc6e997b6f8fdd53d45a48b57.tar.bz2
rockbox-79a2a936a289ed7dc6e997b6f8fdd53d45a48b57.tar.xz
remove numerical genre and use genre_string consistently:
- fix spurious display of "blues" genre for missing genre tag - simplify code/use less code - numerical->string conversion only once instead of at every use git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12552 a1c6a512-1295-4272-9138-f99709370657
Diffstat (limited to 'apps')
-rw-r--r--apps/gui/gwps-common.c2
-rw-r--r--apps/metadata.c9
-rw-r--r--apps/screens.c2
-rw-r--r--apps/tagcache.c7
4 files changed, 6 insertions, 14 deletions
diff --git a/apps/gui/gwps-common.c b/apps/gui/gwps-common.c
index f5e3bc2..d59ac13 100644
--- a/apps/gui/gwps-common.c
+++ b/apps/gui/gwps-common.c
@@ -506,7 +506,7 @@ static char* get_tag(struct wps_data* wps_data,
return NULL;
case 'g': /* genre */
- return id3_get_genre(id3);
+ return id3->genre_string;
case 'v': /* id3 version */
switch (id3->id3version)
diff --git a/apps/metadata.c b/apps/metadata.c
index f9c4e94..84ee37c 100644
--- a/apps/metadata.c
+++ b/apps/metadata.c
@@ -305,8 +305,6 @@ static bool read_ape_tags(int fd, struct mp3entry* id3)
return false;
}
- id3->genre = 0xff;
-
if ((header.version == 2000) && (header.item_count > 0)
&& (header.length > APETAG_HEADER_LENGTH))
{
@@ -388,8 +386,6 @@ static bool read_vorbis_tags(int fd, struct mp3entry *id3,
int buf_remaining = sizeof(id3->id3v2buf) + sizeof(id3->id3v1buf);
int i;
- id3->genre = 255;
-
if (ecread(fd, &len, 1, "l", IS_BIG_ENDIAN) < (long) sizeof(len))
{
return false;
@@ -1355,7 +1351,7 @@ static bool read_mp4_tags(int fd, struct mp3entry* id3,
unsigned short genre;
read_mp4_tag(fd, size, (char*) &genre, sizeof(genre));
- id3->genre = betoh16(genre);
+ id3->genre_string = id3_get_num_genre(betoh16(genre));
}
break;
@@ -1591,7 +1587,6 @@ static bool read_mp4_container(int fd, struct mp3entry* id3,
static bool get_mp4_metadata(int fd, struct mp3entry* id3)
{
id3->codectype = AFMT_UNKNOWN;
- id3->genre = 255;
id3->filesize = 0;
errno = 0;
@@ -2179,7 +2174,7 @@ bool get_metadata(struct track_info* track, int fd, const char* trackname,
break;
case AFMT_SPC:
track->id3.filesize = filesize(fd);
- track->id3.genre = 36;
+ track->id3.genre_string = id3_get_num_genre(36);
break;
case AFMT_ADX:
if (!get_adx_metadata(fd, &(track->id3)))
diff --git a/apps/screens.c b/apps/screens.c
index 9835d28..df1eb6a 100644
--- a/apps/screens.c
+++ b/apps/screens.c
@@ -1181,7 +1181,7 @@ static char * id3_get_info(int selected_item, void* data, char *buffer)
info=id3->comment;
break;
case 6:/*LANG_ID3_GENRE*/
- info = id3_get_genre(id3);
+ info = id3->genre_string;
break;
case 7:/*LANG_ID3_YEAR*/
if (id3->year_string)
diff --git a/apps/tagcache.c b/apps/tagcache.c
index a0c6d66..46614ef 100644
--- a/apps/tagcache.c
+++ b/apps/tagcache.c
@@ -1534,7 +1534,6 @@ static void add_tagcache(char *path)
bool ret;
int fd;
char tracknumfix[3];
- char *genrestr;
int offset = 0;
int path_length = strlen(path);
@@ -1620,8 +1619,6 @@ static void add_tagcache(char *path)
}
}
- genrestr = id3_get_genre(&track.id3);
-
/* Numeric tags */
entry.tag_offset[tag_year] = track.id3.year;
entry.tag_offset[tag_tracknumber] = track.id3.tracknum;
@@ -1633,7 +1630,7 @@ static void add_tagcache(char *path)
ADD_TAG(entry, tag_title, &track.id3.title);
ADD_TAG(entry, tag_artist, &track.id3.artist);
ADD_TAG(entry, tag_album, &track.id3.album);
- ADD_TAG(entry, tag_genre, &genrestr);
+ ADD_TAG(entry, tag_genre, &track.id3.genre_string);
ADD_TAG(entry, tag_composer, &track.id3.composer);
ADD_TAG(entry, tag_comment, &track.id3.comment);
ADD_TAG(entry, tag_albumartist, &track.id3.albumartist);
@@ -1647,7 +1644,7 @@ static void add_tagcache(char *path)
write_item(track.id3.title);
write_item(track.id3.artist);
write_item(track.id3.album);
- write_item(genrestr);
+ write_item(track.id3.genre_string);
write_item(track.id3.composer);
write_item(track.id3.comment);
write_item(track.id3.albumartist);