X-Git-Url: http://git.cascardo.eti.br/?a=blobdiff_plain;f=sound%2Fcore%2Fcompress_offload.c;h=ec2118d0e27aca3f5fef6c2ddd72f8b166ce98ca;hb=8cfe523a1294da65ef95b6ed7b0f7db5629f8d88;hp=a68aed7fce0205462ce08183f560015eeb0060cb;hpb=c02f935f5f646fe1b5dbcd909e9d09c3a912914e;p=cascardo%2Flinux.git diff --git a/sound/core/compress_offload.c b/sound/core/compress_offload.c index a68aed7fce02..ec2118d0e27a 100644 --- a/sound/core/compress_offload.c +++ b/sound/core/compress_offload.c @@ -502,10 +502,8 @@ static int snd_compr_pause(struct snd_compr_stream *stream) if (stream->runtime->state != SNDRV_PCM_STATE_RUNNING) return -EPERM; retval = stream->ops->trigger(stream, SNDRV_PCM_TRIGGER_PAUSE_PUSH); - if (!retval) { + if (!retval) stream->runtime->state = SNDRV_PCM_STATE_PAUSED; - wake_up(&stream->runtime->sleep); - } return retval; } @@ -544,6 +542,10 @@ static int snd_compr_stop(struct snd_compr_stream *stream) if (!retval) { stream->runtime->state = SNDRV_PCM_STATE_SETUP; wake_up(&stream->runtime->sleep); + stream->runtime->hw_pointer = 0; + stream->runtime->app_pointer = 0; + stream->runtime->total_bytes_available = 0; + stream->runtime->total_bytes_transferred = 0; } return retval; }