diff options
author | 2011-08-31 21:11:11 +0200 | |
---|---|---|
committer | 2011-08-31 21:11:11 +0200 | |
commit | 130b06b3505bbd1a21c09a046345bd9fdddafc18 (patch) | |
tree | 3c67ef701415c6ce9e31babf5d108ea6790946f5 | |
parent | 921c74cb8eb8f517e2905ede971a7a267a626b7a (diff) |
fixed crash on malformed cuesheet files
-rw-r--r-- | playlist.c | 6 |
1 files changed, 5 insertions, 1 deletions
@@ -1113,8 +1113,12 @@ plt_insert_cue_from_buffer (playlist_t *playlist, playItem_t *after, playItem_t if (after && after != ins) { pl_item_ref (after); } - // copy metadata from embedded tags playItem_t *first = ins ? ins->next[PL_MAIN] : playlist->head[PL_MAIN]; + if (!first) { + UNLOCK; + return NULL; + } + // copy metadata from embedded tags uint32_t f = pl_get_item_flags (origin); f |= DDB_TAG_CUESHEET | DDB_IS_SUBTRACK; if (pl_find_meta (origin, "cuesheet")) { |