From f657d3d60096119392760e7c9dfee67549d4b6f3 Mon Sep 17 00:00:00 2001 From: Bernhard Schelling <14200249+schellingb@users.noreply.github.com> Date: Fri, 7 Aug 2020 21:13:40 +0900 Subject: [PATCH] More index validation and avoid qsort with NULL --- playlist.c | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/playlist.c b/playlist.c index f80e407d04..e97c5895c5 100644 --- a/playlist.c +++ b/playlist.c @@ -2878,7 +2878,8 @@ void playlist_qsort(playlist_t *playlist) /* Avoid inadvertent sorting if 'sort mode' * has been set explicitly to PLAYLIST_SORT_MODE_OFF */ if (!playlist || - (playlist->sort_mode == PLAYLIST_SORT_MODE_OFF)) + (playlist->sort_mode == PLAYLIST_SORT_MODE_OFF) || + !playlist->entries) return; qsort(playlist->entries, RBUF_LEN(playlist->entries), @@ -2975,7 +2976,7 @@ bool playlist_entries_are_equal( void playlist_get_crc32(playlist_t *playlist, size_t idx, const char **crc32) { - if (!playlist) + if (!playlist || idx >= RBUF_LEN(playlist->entries)) return; if (crc32) @@ -2985,7 +2986,7 @@ void playlist_get_crc32(playlist_t *playlist, size_t idx, void playlist_get_db_name(playlist_t *playlist, size_t idx, const char **db_name) { - if (!playlist) + if (!playlist || idx >= RBUF_LEN(playlist->entries)) return; if (db_name)