mirror of
https://github.com/alsa-project/alsa-lib.git
synced 2026-02-28 01:40:08 -05:00
Moved mmap_size to setup struct
This commit is contained in:
parent
0bb7e43979
commit
875aed990f
4 changed files with 9 additions and 18 deletions
|
|
@ -507,8 +507,6 @@ int snd_pcm_mmap_get_areas(snd_pcm_t *handle, snd_pcm_channel_area_t *areas)
|
|||
|
||||
int snd_pcm_mmap_data(snd_pcm_t *handle, void **data)
|
||||
{
|
||||
snd_pcm_info_t info;
|
||||
size_t bsize;
|
||||
int err;
|
||||
assert(handle);
|
||||
assert(handle->valid_setup);
|
||||
|
|
@ -518,17 +516,12 @@ int snd_pcm_mmap_data(snd_pcm_t *handle, void **data)
|
|||
return 0;
|
||||
}
|
||||
|
||||
err = snd_pcm_info(handle, &info);
|
||||
if (err < 0)
|
||||
return err;
|
||||
bsize = info.mmap_size;
|
||||
if (!(info.flags & SND_PCM_INFO_MMAP))
|
||||
if (handle->setup.mmap_size == 0)
|
||||
return -ENXIO;
|
||||
if ((err = handle->ops->mmap_data(handle->op_arg, (void**)&handle->mmap_data, bsize)) < 0)
|
||||
if ((err = handle->ops->mmap_data(handle->op_arg, (void**)&handle->mmap_data, handle->setup.mmap_size)) < 0)
|
||||
return err;
|
||||
if (data)
|
||||
*data = handle->mmap_data;
|
||||
handle->mmap_data_size = bsize;
|
||||
err = snd_pcm_mmap_get_areas(handle, NULL);
|
||||
if (err < 0)
|
||||
return err;
|
||||
|
|
@ -582,12 +575,11 @@ int snd_pcm_munmap_data(snd_pcm_t *handle)
|
|||
int err;
|
||||
assert(handle);
|
||||
assert(handle->mmap_data);
|
||||
if ((err = handle->ops->munmap_data(handle->op_arg, handle->mmap_data, handle->mmap_data_size)) < 0)
|
||||
if ((err = handle->ops->munmap_data(handle->op_arg, handle->mmap_data, handle->setup.mmap_size)) < 0)
|
||||
return err;
|
||||
free(handle->channels);
|
||||
handle->channels = 0;
|
||||
handle->mmap_data = 0;
|
||||
handle->mmap_data_size = 0;
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue