1
0
mirror of https://github.com/lvgl/lvgl.git synced 2025-01-28 07:03:00 +08:00

fix(txt): fix global buffer overflow in lv_txt_utf8_get_byte_id

fixes #2089
This commit is contained in:
Gabor Kiss-Vamosi 2021-03-01 16:07:24 +01:00
parent 58708ca771
commit 2618326f24

View File

@ -724,7 +724,7 @@ static uint32_t lv_txt_utf8_get_byte_id(const char * txt, uint32_t utf8_id)
{ {
uint32_t i; uint32_t i;
uint32_t byte_cnt = 0; uint32_t byte_cnt = 0;
for(i = 0; i < utf8_id; i++) { for(i = 0; i < utf8_id && txt[byte_cnt] != '\0'; i++) {
uint8_t c_size = _lv_txt_encoded_size(&txt[byte_cnt]); uint8_t c_size = _lv_txt_encoded_size(&txt[byte_cnt]);
byte_cnt += c_size > 0 ? c_size : 1; byte_cnt += c_size > 0 ? c_size : 1;
} }