From 6113d83e089727940eb6136c26794062685bcc47 Mon Sep 17 00:00:00 2001 From: Jaroslav Kysela Date: Sat, 15 Dec 2001 17:22:31 +0000 Subject: [PATCH] Fixed munmap sizes (SIGSEGV) --- src/pcm/pcm_mmap.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/pcm/pcm_mmap.c b/src/pcm/pcm_mmap.c index cf842bc7..7a29e5aa 100644 --- a/src/pcm/pcm_mmap.c +++ b/src/pcm/pcm_mmap.c @@ -388,7 +388,7 @@ int snd_pcm_munmap(snd_pcm_t *pcm) for (c = 0; c < pcm->channels; ++c) { snd_pcm_channel_info_t *i = &pcm->mmap_channels[c]; unsigned int c1; - size_t size = i->first + i->step * pcm->buffer_size; + size_t size = i->first + i->step * (pcm->buffer_size - 1) + pcm->sample_bits; if (!i->addr) continue; for (c1 = c + 1; c1 < pcm->channels; ++c1) { @@ -397,7 +397,7 @@ int snd_pcm_munmap(snd_pcm_t *pcm) if (i1->addr != i->addr) continue; i1->addr = NULL; - s = i1->first + i1->step * pcm->buffer_size; + s = i1->first + i1->step * (pcm->buffer_size - 1) + pcm->sample_bits; if (s > size) size = s; } -- 2.47.1