summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorWilliam Wilgus <wilgus.william@gmail.com>2021-03-04 08:28:41 -0500
committerWilliam Wilgus <me.theuser@yahoo.com>2021-03-04 13:32:45 +0000
commit80be135d0d39d8f4640e33315c2c04968d024a01 (patch)
treefdf0ed843910456b433f766f7eb7c99fa458e54c
parentde53965e3f83d5741f96a389b039b046f2f01aac (diff)
downloadrockbox-80be135d0d39d8f4640e33315c2c04968d024a01.tar.gz
rockbox-80be135d0d39d8f4640e33315c2c04968d024a01.zip
OOM on playlist_resume
Discovered on ClipZip but applicable to other LOW MEM targets Back off voice buffer on playlist_resume Change-Id: Ia316c4b7fc1bcb089d3069a13dd7c193edf2ba1e
-rw-r--r--apps/playlist.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/apps/playlist.c b/apps/playlist.c
index 72d126bdc5..af733f486c 100644
--- a/apps/playlist.c
+++ b/apps/playlist.c
@@ -2122,6 +2122,7 @@ int playlist_resume(void)
2122 * default buflib buffers can be moved around which must be avoided */ 2122 * default buflib buffers can be moved around which must be avoided */
2123 static struct buflib_callbacks dummy_ops; 2123 static struct buflib_callbacks dummy_ops;
2124 /* use mp3 buffer for maximum load speed */ 2124 /* use mp3 buffer for maximum load speed */
2125 talk_buffer_set_policy(TALK_BUFFER_LOOSE); /* back off voice buffer */
2125 handle = core_alloc_maximum("temp", &buflen, &dummy_ops); 2126 handle = core_alloc_maximum("temp", &buflen, &dummy_ops);
2126 if (handle < 0) 2127 if (handle < 0)
2127 panicf("%s(): OOM", __func__); 2128 panicf("%s(): OOM", __func__);
@@ -2506,6 +2507,7 @@ int playlist_resume(void)
2506#endif 2507#endif
2507 2508
2508out: 2509out:
2510 talk_buffer_set_policy(TALK_BUFFER_DEFAULT);
2509 core_free(handle); 2511 core_free(handle);
2510 return result; 2512 return result;
2511} 2513}