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
This commit is contained in:
Romain Bignon
2009-03-27 14:42:55 +01:00
parent 929c200c38
commit e46722b2eb
8 changed files with 87 additions and 2 deletions

View File

@@ -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]) *