From 4d37d43b7ef88923fb470b527fad3ddcee57e158 Mon Sep 17 00:00:00 2001 From: schneider <schneider@blinkenlichts.net> Date: Sun, 10 Jan 2021 21:06:59 +0100 Subject: [PATCH] fix(display): Explicitly free scratch buffer --- pycardium/modules/sys_display.c | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/pycardium/modules/sys_display.c b/pycardium/modules/sys_display.c index fa416dc66..eedeb705e 100644 --- a/pycardium/modules/sys_display.c +++ b/pycardium/modules/sys_display.c @@ -119,7 +119,7 @@ static mp_obj_t mp_display_blit(size_t n_args, const mp_obj_t *args) mp_raise_ValueError("'img' is too small."); } - uint16_t *buf; + uint16_t *buf = NULL; if (rgb565) { buf = (uint16_t *)img.buf; } else { @@ -150,6 +150,10 @@ static mp_obj_t mp_display_blit(size_t n_args, const mp_obj_t *args) res = epic_disp_blit(pos_x, pos_y, width, height, buf, NULL); } + if (buf) { + m_free(buf); + } + if (res < 0) { mp_raise_OSError(-res); } -- GitLab