X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~mdw/git/disorder/blobdiff_plain/9e89d26a8e1378f17a19da072c5f7308ddaf24f1..b60ceb3caecce2c86c484e6173fb1428b71d456a:/server/play.c diff --git a/server/play.c b/server/play.c index 8406238..b6d3dcc 100644 --- a/server/play.c +++ b/server/play.c @@ -340,33 +340,6 @@ static int start_child(struct queue_entry *q, void attribute((unused)) *bgdata) { int n; - /* Wait for a device to clear. This ugliness is now deprecated and will - * eventually be removed. */ - if(params->waitdevice) { - ao_initialize(); - if(*params->waitdevice) { - n = ao_driver_id(params->waitdevice); - if(n == -1) - disorder_fatal(0, "invalid libao driver: %s", params->waitdevice); - } else - n = ao_default_driver_id(); - /* Make up a format. */ - ao_sample_format format; - memset(&format, 0, sizeof format); - format.bits = 8; - format.rate = 44100; - format.channels = 1; - format.byte_format = AO_FMT_NATIVE; - int retries = 20; - struct timespec ts; - ts.tv_sec = 0; - ts.tv_nsec = 100000000; /* 0.1s */ - ao_device *device; - while((device = ao_open_live(n, &format, 0)) == 0 && retries-- > 0) - nanosleep(&ts, 0); - if(device) - ao_close(device); - } /* Play the track */ play_track(q->pl, params->argv, params->argc, @@ -640,11 +613,13 @@ void play(ev_source *ev) { /* Miscelleneous ------------------------------------------------------------ */ +int flag_enabled(const char *s) { + return !s || !strcmp(s, "yes"); +} + /** @brief Return true if play is enabled */ int playing_is_enabled(void) { - const char *s = trackdb_get_global("playing"); - - return !s || !strcmp(s, "yes"); + return flag_enabled(trackdb_get_global("playing")); } /** @brief Enable play */ @@ -656,15 +631,13 @@ void enable_playing(const char *who, ev_source *ev) { } /** @brief Disable play */ -void disable_playing(const char *who) { +void disable_playing(const char *who, ev_source attribute((unused)) *ev) { trackdb_set_global("playing", "no", who); } /** @brief Return true if random play is enabled */ int random_is_enabled(void) { - const char *s = trackdb_get_global("random-play"); - - return !s || !strcmp(s, "yes"); + return flag_enabled(trackdb_get_global("random-play")); } /** @brief Enable random play */ @@ -675,7 +648,7 @@ void enable_random(const char *who, ev_source *ev) { } /** @brief Disable random play */ -void disable_random(const char *who) { +void disable_random(const char *who, ev_source attribute((unused)) *ev) { trackdb_set_global("random-play", "no", who); }