diff options
author | William Wilgus <wilgus.william@gmail.com> | 2021-08-11 08:29:02 -0400 |
---|---|---|
committer | William Wilgus <wilgus.william@gmail.com> | 2021-08-11 08:29:02 -0400 |
commit | e3e72d6dba080c31b717ee3b53a3fde181123766 (patch) | |
tree | a6c0c03a3ba1459388918bc3f29e3e6933fa40aa | |
parent | c9e95580445530c5b6d2ca31d04f07bd61ad843f (diff) | |
download | rockbox-e3e72d6dba080c31b717ee3b53a3fde181123766.tar.gz rockbox-e3e72d6dba080c31b717ee3b53a3fde181123766.zip |
metadata/mp4.c fix small oversight / bug
didn't set the genre string to null on case entry
means read failure would leave genre string indeterminate
add explicit NULL & leave genre uninitialized
Change-Id: I1452a0b57985646c982ec80755d0df9d03745f1e
-rw-r--r-- | lib/rbcodec/metadata/mp4.c | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/lib/rbcodec/metadata/mp4.c b/lib/rbcodec/metadata/mp4.c index e79af3bd7b..41f38480b1 100644 --- a/lib/rbcodec/metadata/mp4.c +++ b/lib/rbcodec/metadata/mp4.c | |||
@@ -444,10 +444,10 @@ static bool read_mp4_tags(int fd, struct mp3entry* id3, | |||
444 | 444 | ||
445 | case MP4_gnre: | 445 | case MP4_gnre: |
446 | { | 446 | { |
447 | unsigned short genre = USHRT_MAX; /*invalid genre*/ | 447 | unsigned short genre; |
448 | unsigned long rd_ret; | 448 | const unsigned int g_size = sizeof(genre); |
449 | rd_ret = read_mp4_tag(fd, size, (char*) &genre, sizeof(genre)); | 449 | id3->genre_string = NULL; |
450 | if (rd_ret == sizeof(genre)) | 450 | if (read_mp4_tag(fd, size, (char*) &genre, g_size) == g_size) |
451 | id3->genre_string = id3_get_num_genre(betoh16(genre) - 1); | 451 | id3->genre_string = id3_get_num_genre(betoh16(genre) - 1); |
452 | } | 452 | } |
453 | break; | 453 | break; |