diff options
Diffstat (limited to 'src/song_print.c')
-rw-r--r-- | src/song_print.c | 13 |
1 files changed, 7 insertions, 6 deletions
diff --git a/src/song_print.c b/src/song_print.c index 77741e768..f754f2348 100644 --- a/src/song_print.c +++ b/src/song_print.c @@ -17,6 +17,7 @@ */ #include "song_print.h" +#include "songvec.h" #include "directory.h" #include "tag_print.h" #include "client.h" @@ -41,14 +42,14 @@ int printSongInfo(struct client *client, Song * song) return 0; } -int printSongInfoFromList(struct client *client, SongList * list) +int songvec_print(struct client *client, const struct songvec *sv) { - ListNode *tempNode = list->firstNode; + int i; + Song **sp = sv->base; - while (tempNode != NULL) { - printSongInfo(client, (Song *) tempNode->data); - tempNode = tempNode->nextNode; - } + for (i = sv->nr; --i >= 0;) + if (printSongInfo(client, *sp++) < 0) + return -1; return 0; } |