Skip to content

Commit 82583ce

Browse files
authored
Merge pull request #101 from chenghongyao/fix_data_length_overflow
ST7789: Fix data length overflow on `send_color` by changing the length parameter from uint16_t to size_t
2 parents 1801416 + 171cd53 commit 82583ce

File tree

1 file changed

+3
-3
lines changed

1 file changed

+3
-3
lines changed

lvgl_tft/st7789.c

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -35,7 +35,7 @@ typedef struct {
3535
**********************/
3636
static void st7789_set_orientation(uint8_t orientation);
3737

38-
static void st7789_send_color(void *data, uint16_t length);
38+
static void st7789_send_color(void *data, size_t length);
3939

4040
/**********************
4141
* STATIC VARIABLES
@@ -167,7 +167,7 @@ void st7789_flush(lv_disp_drv_t * drv, const lv_area_t * area, lv_color_t * colo
167167
/*Memory write*/
168168
st7789_send_cmd(ST7789_RAMWR);
169169

170-
uint32_t size = lv_area_get_width(area) * lv_area_get_height(area);
170+
size_t size = (size_t)lv_area_get_width(area) * (size_t)lv_area_get_height(area);
171171

172172
st7789_send_color((void*)color_map, size * 2);
173173

@@ -190,7 +190,7 @@ void st7789_send_data(void * data, uint16_t length)
190190
disp_spi_send_data(data, length);
191191
}
192192

193-
static void st7789_send_color(void * data, uint16_t length)
193+
static void st7789_send_color(void * data, size_t length)
194194
{
195195
disp_wait_for_pending_transactions();
196196
gpio_set_level(ST7789_DC, 1);

0 commit comments

Comments
 (0)