From 917f2c1804c1c581c09fdd1a6cd219298da54964 Mon Sep 17 00:00:00 2001 From: Magnus Holmgren Date: Thu, 22 Dec 2005 21:42:00 +0000 Subject: Simulator fixes: id3 string pointers can be null. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@8282 a1c6a512-1295-4272-9138-f99709370657 --- apps/playback.c | 9 ++++++--- firmware/mpeg.c | 9 ++++++--- 2 files changed, 12 insertions(+), 6 deletions(-) diff --git a/apps/playback.c b/apps/playback.c index dda3ea7bdd..1e9bca6c36 100644 --- a/apps/playback.c +++ b/apps/playback.c @@ -1027,9 +1027,12 @@ static bool read_next_metadata(void) status = get_metadata(&tracks[next_track],fd,trackname,v1first); /* Preload the glyphs in the tags */ if (status) { - lcd_getstringsize(tracks[next_track].id3.title, NULL, NULL); - lcd_getstringsize(tracks[next_track].id3.artist, NULL, NULL); - lcd_getstringsize(tracks[next_track].id3.album, NULL, NULL); + if (tracks[next_track].id3.title) + lcd_getstringsize(tracks[next_track].id3.title, NULL, NULL); + if (tracks[next_track].id3.artist) + lcd_getstringsize(tracks[next_track].id3.artist, NULL, NULL); + if (tracks[next_track].id3.album) + lcd_getstringsize(tracks[next_track].id3.album, NULL, NULL); } track_changed = true; close(fd); diff --git a/firmware/mpeg.c b/firmware/mpeg.c index 5b1a543f2d..f1bb97291a 100644 --- a/firmware/mpeg.c +++ b/firmware/mpeg.c @@ -920,9 +920,12 @@ static struct trackdata *add_track_to_tag_list(const char *filename) track->mempos = audiobuf_write; track->id3.elapsed = 0; #ifdef HAVE_LCD_BITMAP - lcd_getstringsize(track->id3.title, NULL, NULL); - lcd_getstringsize(track->id3.artist, NULL, NULL); - lcd_getstringsize(track->id3.album, NULL, NULL); + if (track->id3.title) + lcd_getstringsize(track->id3.title, NULL, NULL); + if (track->id3.artist) + lcd_getstringsize(track->id3.artist, NULL, NULL); + if (track->id3.album) + lcd_getstringsize(track->id3.album, NULL, NULL); #endif track_write_idx = (track_write_idx+1) & MAX_TRACK_ENTRIES_MASK; -- cgit v1.2.3