|
@@ -288,9 +288,12 @@ static ssize_t snd_compr_write(struct file *f, const char __user *buf,
|
|
|
stream = &data->stream;
|
|
|
mutex_lock(&stream->device->lock);
|
|
|
/* write is allowed when stream is running or has been steup */
|
|
|
- if (stream->runtime->state != SNDRV_PCM_STATE_SETUP &&
|
|
|
- stream->runtime->state != SNDRV_PCM_STATE_PREPARED &&
|
|
|
- stream->runtime->state != SNDRV_PCM_STATE_RUNNING) {
|
|
|
+ switch (stream->runtime->state) {
|
|
|
+ case SNDRV_PCM_STATE_SETUP:
|
|
|
+ case SNDRV_PCM_STATE_PREPARED:
|
|
|
+ case SNDRV_PCM_STATE_RUNNING:
|
|
|
+ break;
|
|
|
+ default:
|
|
|
mutex_unlock(&stream->device->lock);
|
|
|
return -EBADFD;
|
|
|
}
|