From dd68877aae8cd70f3b4a26118770d1735e21e1e0 Mon Sep 17 00:00:00 2001 From: Gabor Kiss-Vamosi Date: Mon, 28 Oct 2019 05:47:31 +0100 Subject: [PATCH] bidi bracket handling fixies --- src/lv_misc/lv_bidi.c | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/src/lv_misc/lv_bidi.c b/src/lv_misc/lv_bidi.c index 13ecdc17d..634e1f896 100644 --- a/src/lv_misc/lv_bidi.c +++ b/src/lv_misc/lv_bidi.c @@ -338,8 +338,6 @@ static uint32_t char_change_to_pair(uint32_t letter) static lv_bidi_dir_t bracket_process(const char * txt, uint32_t next_pos, uint32_t len, uint32_t letter, lv_bidi_dir_t base_dir) { - if(br_stack_p >= LV_BIDI_BRACKLET_DEPTH) return LV_BIDI_DIR_NEUTRAL; - lv_bidi_dir_t bracket_dir = LV_BIDI_DIR_NEUTRAL; uint8_t i; @@ -396,7 +394,7 @@ static lv_bidi_dir_t bracket_process(const char * txt, uint32_t next_pos, uint32 /*The letter was an opening bracket*/ if(bracket_left[i] != '\0') { - if(bracket_dir == LV_BIDI_DIR_NEUTRAL) return bracket_dir; + if(bracket_dir == LV_BIDI_DIR_NEUTRAL || br_stack_p == LV_BIDI_BRACKLET_DEPTH) return LV_BIDI_DIR_NEUTRAL; br_stack[br_stack_p].bracklet_pos = i; br_stack[br_stack_p].dir = bracket_dir;