diff options
author | Romain Bignon <romain@peerfuse.org> | 2009-03-27 14:42:55 +0100 |
---|---|---|
committer | Romain Bignon <romain@peerfuse.org> | 2009-03-27 14:58:31 +0100 |
commit | e46722b2ebe05fce63bc7b86100c159b5cadd297 (patch) | |
tree | c61515a84ad0f425233a7ebe7ee3731ab63df92a /src/queue.c | |
parent | 929c200c380996d6dfcbdd468a74aaef48298af6 (diff) | |
download | mpd-e46722b2ebe05fce63bc7b86100c159b5cadd297.tar.gz mpd-e46722b2ebe05fce63bc7b86100c159b5cadd297.tar.xz mpd-e46722b2ebe05fce63bc7b86100c159b5cadd297.zip |
implements the smartstop feature
The smartstop feature is a way to tell mpd to stop playing after
current song.
This patche provides:
- 'state' command returns 'smartstop' state (1 or 0)
- 'smartstop' can activate or not the smartstop state
- when song is terminated, mpd stops playing and smartstop is set to 0
Diffstat (limited to 'src/queue.c')
-rw-r--r-- | src/queue.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/src/queue.c b/src/queue.c index b9486cfe5..28da0e5a3 100644 --- a/src/queue.c +++ b/src/queue.c @@ -40,6 +40,8 @@ queue_next_order(const struct queue *queue, unsigned order) { assert(order < queue->length); + if (queue->smartstop) + return -1; if (order + 1 < queue->length) return order + 1; else if (queue->repeat) @@ -275,6 +277,7 @@ queue_init(struct queue *queue, unsigned max_length) queue->version = 1; queue->repeat = false; queue->random = false; + queue->smartstop = false; queue->items = g_new(struct queue_item, max_length); queue->order = g_malloc(sizeof(queue->order[0]) * |