diff options
author | Waldemar Brodkorb <wbx@openadk.org> | 2010-04-04 13:49:55 +0200 |
---|---|---|
committer | Waldemar Brodkorb <wbx@openadk.org> | 2010-04-04 13:49:55 +0200 |
commit | 764fb0eb598e94e18ac76b7bf7b9afdaa1e46c5f (patch) | |
tree | 82ff75052954b80abd51827b1edc2ffbcd7d6298 /package/alsa-lib/patches | |
parent | 78127212d0aaa988eb05226879b59c6238a287b3 (diff) |
use nanosleep instead of usleep
Diffstat (limited to 'package/alsa-lib/patches')
-rw-r--r-- | package/alsa-lib/patches/patch-src_pcm_pcm_shm_c | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/package/alsa-lib/patches/patch-src_pcm_pcm_shm_c b/package/alsa-lib/patches/patch-src_pcm_pcm_shm_c new file mode 100644 index 000000000..decd44bc8 --- /dev/null +++ b/package/alsa-lib/patches/patch-src_pcm_pcm_shm_c @@ -0,0 +1,23 @@ +--- alsa-lib-1.0.22.orig/src/pcm/pcm_shm.c 2009-12-16 16:18:51.000000000 +0100 ++++ alsa-lib-1.0.22/src/pcm/pcm_shm.c 2010-04-04 10:53:44.000000000 +0200 +@@ -482,15 +482,19 @@ static int snd_pcm_shm_drop(snd_pcm_t *p + + static int snd_pcm_shm_drain(snd_pcm_t *pcm) + { ++ struct timespec ts; + snd_pcm_shm_t *shm = pcm->private_data; + volatile snd_pcm_shm_ctrl_t *ctrl = shm->ctrl; + int err; ++ ts.tv_sec = 0; ++ ts.tv_nsec = 10000000; ++ + do { + ctrl->cmd = SNDRV_PCM_IOCTL_DRAIN; + err = snd_pcm_shm_action(pcm); + if (err != -EAGAIN) + break; +- usleep(10000); ++ nanosleep(&ts, NULL); + } while (1); + if (err < 0) + return err; |