Roller. Wrong scroll position at first time

lvgl v6.1.1. Roller object.
When i set options “1\n2\n33333333\n4”, so width of the third element is bigger, than parent container, it appears with scrolling possition above the first element (so first item is half string below the selected string).
With options “1\n33333333”, scroll position initially is between items.
Error appears only with normal roller mode.
After any scrolling everything is fine.

auto cont = lv_cont_create(lv_scr_act(), nullptr);
lv_obj_set_size(cont, LV_HOR_RES, LV_VER_RES);
auto rol = lv_roller_create(cont, nullptr);
std::string str;
str = "1\n2\n33333333\n4"; //error
//str = "1\n33333333"; //error
lv_roller_set_options(rol, str.data(), LV_ROLLER_MODE_NORMAL);
lv_roller_set_selected(rol, 0, false);

Seems to behave normally on my end (no overflow or weird positioning). Does this happen in the simulator? What is your font size? If you are using a custom font, can you send a copy?

Yes, it happens in simulator.
And i use build-in font: lv_font_unscii_8.
I tried different fonts, and it is really depends on font.

lv_theme_set_current(lv_theme_mono_init(&lv_font_unscii_8));
//str = "1\n2\n3333333\n4"; //no error
  str = "1\n2\n33333333\n4"; //error
//str = "1\n2\n333333333\n4"; //no error
lv_roller_set_options(rol, str.data(), LV_ROLLER_MODE_NORMAL);

lv_conf.h:

#define LV_HOR_RES_MAX          (128)
#define LV_VER_RES_MAX          (64)

Hi,

I’ve fixed it here: