From 1cd5c5ec77ea43088982a439b58499be87c62087 Mon Sep 17 00:00:00 2001
From: Lars-Dominik Braun <lars@6xq.net>
Date: Sat, 7 Mar 2015 16:01:26 +0100
Subject: Fix upcoming songs assertion failure

This should not be an assertion, it is expected to happen. Test with
`echo -e "s0\nu" > ctl`. Fixes #509.
---
 src/libpiano/piano.h | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

(limited to 'src/libpiano')

diff --git a/src/libpiano/piano.h b/src/libpiano/piano.h
index 58eb7ef..28a2b45 100644
--- a/src/libpiano/piano.h
+++ b/src/libpiano/piano.h
@@ -317,7 +317,7 @@ void *PianoListDelete (PianoListHead_t * const l, PianoListHead_t * const e)
 		__attribute__ ((warn_unused_result));
 #define PianoListDeleteP(l,e) PianoListDelete(((l) == NULL) ? NULL : &(l)->head, \
 		&(e)->head)
-#define PianoListNextP(e) ((void *) (e)->head.next)
+#define PianoListNextP(e) ((e) == NULL ? NULL : (void *) (e)->head.next)
 void *PianoListPrepend (PianoListHead_t * const l, PianoListHead_t * const e)
 		__attribute__ ((warn_unused_result));
 #define PianoListPrependP(l,e) PianoListPrepend (((l) == NULL) ? NULL : &(l)->head, \
-- 
cgit v1.2.3