From: NeilBrown Date: Mon, 14 Jan 2013 20:18:24 +0000 (+1100) Subject: sound: play any pending sounds on restart. X-Git-Url: http://git.neil.brown.name/?a=commitdiff_plain;h=29cf3a1f2646852d9631bdea9bb4fae8bb65be2f;p=plato.git sound: play any pending sounds on restart. abort a little more quickly if something goes wrong, and check for sounds on restart. --- diff --git a/sound/sound.c b/sound/sound.c index b83dbe2..664510e 100644 --- a/sound/sound.c +++ b/sound/sound.c @@ -724,7 +724,7 @@ void play_buf(struct dev *dev) if (dev->present == dev->period_bytes) { if (dev->attenuate) scale_buf(dev); - alarm(30); + alarm(8); snd_pcm_writei(dev->handle, dev->period_buf, dev->period_bytes / dev->sample_bytes); @@ -854,12 +854,12 @@ int main(int argc, char *argv[]) suspend_watch(suspend, NULL, &soundqueue); signal_set(&ev, SIGIO, do_scan, &soundqueue); signal_add(&ev, NULL); - fcntl(dfd, F_NOTIFY, DN_CREATE|DN_DELETE|DN_RENAME); event_set(&work_ev, -1, 0, do_work, &soundqueue); memset(&dev, 0, sizeof(dev)); + do_scan(-1, 0, (void*)&soundqueue); suspend_allow(suspend_handle); event_loop(0); exit(0);