Talk.c, playlist.c fix bugs
fix bug in talk.c playlist.c only dump voice buffer if we are out of space Change-Id: I75705d755db4193a87e542d062dbdc96b153dbb6
This commit is contained in:
parent
03ae4e6019
commit
895ed92496
2 changed files with 4 additions and 1 deletions
|
@ -2122,7 +2122,8 @@ int playlist_resume(void)
|
||||||
* default buflib buffers can be moved around which must be avoided */
|
* default buflib buffers can be moved around which must be avoided */
|
||||||
static struct buflib_callbacks dummy_ops;
|
static struct buflib_callbacks dummy_ops;
|
||||||
/* use mp3 buffer for maximum load speed */
|
/* use mp3 buffer for maximum load speed */
|
||||||
talk_buffer_set_policy(TALK_BUFFER_LOOSE); /* back off voice buffer */
|
if (core_allocatable() < (1 << 10))
|
||||||
|
talk_buffer_set_policy(TALK_BUFFER_LOOSE); /* back off voice buffer */
|
||||||
handle = core_alloc_maximum("temp", &buflen, &dummy_ops);
|
handle = core_alloc_maximum("temp", &buflen, &dummy_ops);
|
||||||
if (handle < 0)
|
if (handle < 0)
|
||||||
panicf("%s(): OOM", __func__);
|
panicf("%s(): OOM", __func__);
|
||||||
|
|
|
@ -625,8 +625,10 @@ static bool load_voicefile_data(int fd)
|
||||||
metadata_alloc_size = max_clips * sizeof(struct clip_cache_metadata);
|
metadata_alloc_size = max_clips * sizeof(struct clip_cache_metadata);
|
||||||
metadata_table_handle = buflib_alloc(&clip_ctx, metadata_alloc_size);
|
metadata_table_handle = buflib_alloc(&clip_ctx, metadata_alloc_size);
|
||||||
if (metadata_table_handle <= 0)
|
if (metadata_table_handle <= 0)
|
||||||
|
{
|
||||||
talk_status = TALK_STATUS_ERR_OOM;
|
talk_status = TALK_STATUS_ERR_OOM;
|
||||||
return false;
|
return false;
|
||||||
|
}
|
||||||
memset(buflib_get_data(&clip_ctx, metadata_table_handle), 0, metadata_alloc_size);
|
memset(buflib_get_data(&clip_ctx, metadata_table_handle), 0, metadata_alloc_size);
|
||||||
|
|
||||||
load_initial_clips(fd);
|
load_initial_clips(fd);
|
||||||
|
|
Loading…
Reference in a new issue