Assert if we don't have song or song->url set
song objects cannot exist without a path or URL
This commit is contained in:
parent
016af692d9
commit
0d34815f6c
@ -298,8 +298,8 @@ removeDeletedFromDirectory(char *path_max_tmp, Directory * directory)
|
||||
|
||||
for (i = sv->nr; --i >= 0; ) { /* cleaner deletes if we go backwards */
|
||||
Song *song = sv->base[i];
|
||||
if (!song || !*song->url)
|
||||
continue; /* does this happen?, perhaps assert() */
|
||||
assert(song);
|
||||
assert(*song->url);
|
||||
|
||||
if (dirname)
|
||||
sprintf(path_max_tmp, "%s/%s", dirname, song->url);
|
||||
|
10
src/song.c
10
src/song.c
@ -31,8 +31,13 @@
|
||||
Song *
|
||||
song_alloc(const char *url, struct _Directory *parent)
|
||||
{
|
||||
size_t urllen = strlen(url);
|
||||
Song *song = xmalloc(sizeof(*song) - sizeof(song->url) + urllen + 1);
|
||||
size_t urllen;
|
||||
Song *song;
|
||||
|
||||
assert(url);
|
||||
urllen = strlen(url);
|
||||
assert(urllen);
|
||||
song = xmalloc(sizeof(*song) - sizeof(song->url) + urllen + 1);
|
||||
|
||||
song->tag = NULL;
|
||||
memcpy(song->url, url, urllen + 1);
|
||||
@ -44,6 +49,7 @@ song_alloc(const char *url, struct _Directory *parent)
|
||||
Song *newSong(const char *url, Directory * parentDir)
|
||||
{
|
||||
Song *song;
|
||||
assert(*url);
|
||||
|
||||
if (strchr(url, '\n')) {
|
||||
DEBUG("newSong: '%s' is not a valid uri\n", url);
|
||||
|
Loading…
Reference in New Issue
Block a user