diff options
author | Anton Altaparmakov <anton@tuxera.com> | 2012-02-24 09:39:16 +0000 |
---|---|---|
committer | Anton Altaparmakov <anton@tuxera.com> | 2012-02-24 09:39:16 +0000 |
commit | 0afa1b62e33250d4777c5803a98ae69fbe872061 (patch) | |
tree | 1c747bc01b62bca85d277e2c8321ae6cf0006ed8 /sound/usb/caiaq | |
parent | 97387e3baaf3c35ad560f8878e943c720a77da1b (diff) | |
parent | bb4c7e9a9908548b458f34afb2fee74dc0d49f90 (diff) |
Merge branch 'master' of /Volumes/CaseSensitiveDisk/linux
Diffstat (limited to 'sound/usb/caiaq')
-rw-r--r-- | sound/usb/caiaq/audio.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/sound/usb/caiaq/audio.c b/sound/usb/caiaq/audio.c index 2cf87f5afed4..fde9a7a29cb6 100644 --- a/sound/usb/caiaq/audio.c +++ b/sound/usb/caiaq/audio.c @@ -311,8 +311,10 @@ snd_usb_caiaq_pcm_pointer(struct snd_pcm_substream *sub) spin_lock(&dev->spinlock); - if (dev->input_panic || dev->output_panic) + if (dev->input_panic || dev->output_panic) { ptr = SNDRV_PCM_POS_XRUN; + goto unlock; + } if (sub->stream == SNDRV_PCM_STREAM_PLAYBACK) ptr = bytes_to_frames(sub->runtime, @@ -321,6 +323,7 @@ snd_usb_caiaq_pcm_pointer(struct snd_pcm_substream *sub) ptr = bytes_to_frames(sub->runtime, dev->audio_in_buf_pos[index]); +unlock: spin_unlock(&dev->spinlock); return ptr; } |