summaryrefslogtreecommitdiff
path: root/lib
diff options
context:
space:
mode:
authorjacqueline <me@jacqueline.id.au>2024-01-17 17:50:57 +1100
committerjacqueline <me@jacqueline.id.au>2024-01-17 17:50:57 +1100
commitc1b7a0c9f2192121fad972dccc7d0a1fe0dee45e (patch)
treec07f49517d64aed041f45ca4870d68a6cdee16c8 /lib
parentea8a7b0f93aa3b391e92d7b930f667d1ff439d04 (diff)
downloadtangara-fw-c1b7a0c9f2192121fad972dccc7d0a1fe0dee45e.tar.gz
move lua ui-related data to spi ram
Diffstat (limited to 'lib')
-rw-r--r--lib/luavgl/src/event.c9
1 files changed, 7 insertions, 2 deletions
diff --git a/lib/luavgl/src/event.c b/lib/luavgl/src/event.c
index 88748a6f..29cf8830 100644
--- a/lib/luavgl/src/event.c
+++ b/lib/luavgl/src/event.c
@@ -1,6 +1,8 @@
#include "luavgl.h"
#include "private.h"
+#include "esp_heap_caps.h"
+
static void luavgl_obj_event_cb(lv_event_t *e)
{
lua_State *L = e->user_data;
@@ -102,7 +104,8 @@ static int luavgl_obj_on_event(lua_State *L)
/* create obj->lobj->events, if NULL, realloc if existing and find no slot
*/
if (events == NULL) {
- events = calloc(sizeof(struct event_callback_s), 1);
+ events =
+ heap_caps_calloc(sizeof(struct event_callback_s), 1, MALLOC_CAP_SPIRAM);
if (events == NULL) {
return luaL_error(L, "No memory.");
}
@@ -113,7 +116,9 @@ static int luavgl_obj_on_event(lua_State *L)
/* realloc? */
if (slot && slot == lobj->n_events) {
struct event_callback_s *_events;
- _events = realloc(lobj->events, (lobj->n_events + 1) * sizeof(*_events));
+ _events = heap_caps_realloc(lobj->events,
+ (lobj->n_events + 1) * sizeof(*_events),
+ MALLOC_CAP_SPIRAM);
if (_events == NULL) {
return luaL_error(L, "No memory.");
}