diff --git a/src/lib/evas/canvas/evas_object_textblock.c b/src/lib/evas/canvas/evas_object_textblock.c index 3503e7172b..0048ffc2a0 100644 --- a/src/lib/evas/canvas/evas_object_textblock.c +++ b/src/lib/evas/canvas/evas_object_textblock.c @@ -11706,7 +11706,7 @@ _evas_textblock_cursor_range_in_line_geometry_get( _ITEM_TEXT(it)->text_props.text_len : 1; if ((!cur1 || (cur1->pos < it->text_pos + item_len)) && - (!cur2 || (cur2->pos >= it->text_pos))) + (!cur2 || (cur2->pos > it->text_pos))) { if (!it1) { diff --git a/src/tests/evas/evas_test_textblock.c b/src/tests/evas/evas_test_textblock.c index f2e542a58e..70ba06bbfe 100644 --- a/src/tests/evas/evas_test_textblock.c +++ b/src/tests/evas/evas_test_textblock.c @@ -2839,6 +2839,15 @@ START_TEST(evas_textblock_geometries) eina_iterator_free(it); + /* Check trivial case with format items */ + evas_object_textblock_text_markup_set(tb, "abcefg"); + evas_textblock_cursor_pos_set(cur, 3); + evas_textblock_cursor_pos_set(main_cur, 3); + it = evas_textblock_cursor_range_simple_geometry_get(cur, main_cur); + rects = eina_iterator_container_get(it); + ck_assert(!rects); + eina_iterator_free(it); + END_TB_TEST(); } END_TEST