diff options
author | Takashi Iwai <tiwai@suse.de> | 2007-06-29 19:16:32 +0200 |
---|---|---|
committer | Takashi Iwai <tiwai@suse.de> | 2007-06-29 19:16:32 +0200 |
commit | 744113ce13c0cc78aa5c731d1d3ea9d826238d86 (patch) | |
tree | cbde4e6fd8215001b9088067b7f7f1bc0eca9a3d | |
parent | 29e991b1d65015fc932bc11bceb77ef81305bf43 (diff) | |
download | salsa-lib-744113ce13c0cc78aa5c731d1d3ea9d826238d86.tar.gz |
Fix avail_min=0 problem.
-rw-r--r-- | ChangeLog | 4 | ||||
-rw-r--r-- | src/pcm.c | 2 | ||||
-rw-r--r-- | src/pcm_params.c | 1 |
3 files changed, 7 insertions, 0 deletions
@@ -1,3 +1,7 @@ +Version 0.0.5: + * Fix the bug that avail_min is cleared, which screwed up poll + return condition + Version 0.0.4: * Fix the missing return from _snd_mixer_selem_get_volume_range() * Fix the check of stop_threshold in snd_pcm_avail_update(). @@ -857,6 +857,7 @@ static int snd_pcm_hw_mmap_status(snd_pcm_t *pcm) pcm->mmap_status = NULL; goto no_mmap; } + pcm->mmap_control->avail_min = 1; return 0; no_mmap: @@ -865,6 +866,7 @@ static int snd_pcm_hw_mmap_status(snd_pcm_t *pcm) return -ENOMEM; pcm->mmap_status = &pcm->sync_ptr->s.status; pcm->mmap_control = &pcm->sync_ptr->c.control; + pcm->mmap_control->avail_min = 1; _snd_pcm_sync_ptr(pcm, 0); return 0; } diff --git a/src/pcm_params.c b/src/pcm_params.c index a4e73e2..6869fd5 100644 --- a/src/pcm_params.c +++ b/src/pcm_params.c @@ -1052,6 +1052,7 @@ int snd_pcm_sw_params(snd_pcm_t *pcm, snd_pcm_sw_params_t *params) if (ioctl(pcm->fd, SNDRV_PCM_IOCTL_SW_PARAMS, params) < 0) return -errno; pcm->sw_params = *params; + pcm->mmap_control->avail_min = params->avail_min; return 0; } |