The TileView is dragging left and right at the bottom, and the stack overflows

I used LVGL7.4.
Sliding the TileView to the very bottom, and then swiping the contents of the TileView left or right, will result in a stack overflow.

So I also tested the GitHub example, and the stack overflow occurred as well.
lv_ex_tileview_1();


void lv_ex_tileview_1(void)
{
	static lv_point_t valid_pos[] = { {0,0}, {1, 0}, {0,1},{1,1} , {0,2},{1,2} };
    lv_obj_t *tileview;
    tileview = lv_tileview_create(lv_scr_act(), NULL);
	lv_page_set_scrl_layout(tileview, LV_LAYOUT_PRETTY_TOP);
    lv_tileview_set_valid_positions(tileview, valid_pos, 6);
    lv_tileview_set_edge_flash(tileview, true);

    lv_obj_t * tile1 = lv_obj_create(tileview, NULL);
    lv_obj_set_size(tile1, LV_HOR_RES/2, LV_VER_RES/2);
    lv_tileview_add_element(tileview, tile1);

    /*Tile1: just a label*/
    lv_obj_t * label = lv_label_create(tile1, NULL);
    lv_label_set_text(label, "Scroll down1");
    lv_obj_align(label, NULL, LV_ALIGN_CENTER, 0, 0);


    tile1 = lv_obj_create(tileview, NULL);
	lv_obj_set_size(tile1, LV_HOR_RES / 2, LV_VER_RES / 2);
	//lv_obj_set_pos(tile1, LV_HOR_RES / 2, 0);
	lv_tileview_add_element(tileview, tile1);

	/*Tile2: just a label*/
	label = lv_label_create(tile1, NULL);
	lv_label_set_text(label, "Scroll down2");
	lv_obj_align(label, NULL, LV_ALIGN_CENTER, 0, 0);


	 tile1 = lv_obj_create(tileview, NULL);
	lv_obj_set_size(tile1, LV_HOR_RES / 2, LV_VER_RES / 2);
	//lv_obj_set_pos(tile1,0, LV_VER_RES / 2);
	lv_tileview_add_element(tileview, tile1);

	/*Tile3: just a label*/
	label = lv_label_create(tile1, NULL);
	lv_label_set_text(label, "Scroll down3");
	lv_obj_align(label, NULL, LV_ALIGN_CENTER, 0, 0);

	tile1 = lv_obj_create(tileview, NULL);
	lv_obj_set_size(tile1, LV_HOR_RES / 2, LV_VER_RES / 2);
	//lv_obj_set_pos(tile1, LV_HOR_RES / 2, LV_VER_RES / 2);
	lv_tileview_add_element(tileview, tile1);

	/*Tile4: just a label*/
	label = lv_label_create(tile1, NULL);
	lv_label_set_text(label, "Scroll down4");
	lv_obj_align(label, NULL, LV_ALIGN_CENTER, 0, 0);

	tile1 = lv_obj_create(tileview, NULL);
	lv_obj_set_size(tile1, LV_HOR_RES / 2, LV_VER_RES / 2);
	//lv_obj_set_pos(tile1,0 , LV_VER_RES);
	lv_tileview_add_element(tileview, tile1);

	/*Tile5: just a label*/
	 label = lv_label_create(tile1, NULL);
	lv_label_set_text(label, "Scroll down5");
	lv_obj_align(label, NULL, LV_ALIGN_CENTER, 0, 0);

	tile1 = lv_obj_create(tileview, NULL);
	lv_obj_set_size(tile1, LV_HOR_RES / 2, LV_VER_RES / 2);
	//lv_obj_set_pos(tile1, LV_HOR_RES/2,  LV_VER_RES );
	lv_tileview_add_element(tileview, tile1);

	/*Tile6: just a label*/
	 label = lv_label_create(tile1, NULL);
	lv_label_set_text(label, "Scroll down6");
	lv_obj_align(label, NULL, LV_ALIGN_CENTER, 0, 0);

	return;
    /*Tile2: a list*/
    lv_obj_t * list = lv_list_create(tileview, NULL);
    lv_obj_set_size(list, LV_HOR_RES/2, LV_VER_RES /2);
    //lv_obj_set_pos(list, 0, LV_VER_RES);
    lv_list_set_scroll_propagation(list, true);
    lv_list_set_scrollbar_mode(list, LV_SCROLLBAR_MODE_OFF);
	lv_tileview_add_element(tileview, list);
    lv_list_add_btn(list, NULL, "One");
    lv_list_add_btn(list, NULL, "Two");
    lv_list_add_btn(list, NULL, "Three");
    lv_list_add_btn(list, NULL, "Four");
    lv_list_add_btn(list, NULL, "Five");
    lv_list_add_btn(list, NULL, "Six");
    lv_list_add_btn(list, NULL, "Seven");
    lv_list_add_btn(list, NULL, "Eight");

    /*Tile3: a button*/
    lv_obj_t * tile3 = lv_obj_create(tileview, tile1);
    lv_obj_set_pos(tile3, LV_HOR_RES/2, LV_VER_RES/2);
    lv_tileview_add_element(tileview, tile3);![123|690x222](upload://60giLTecKPio9QfSLUl7PZ0d5Hk.png) 

    lv_obj_t * btn = lv_btn_create(tile3, NULL);
    lv_obj_align(btn, NULL, LV_ALIGN_CENTER, 0, 0);
    lv_tileview_add_element(tileview, btn);
    label = lv_label_create(btn, NULL);
    lv_label_set_text(label, "No scroll up");
}


I can’t reproduce this on LVGL master (tested with the online version). Please try updating.

I used LVGL 7.9.1 and still had a stack overflow.
If you find that the items in the TileView occupy about half the height of the TileView and the number of lines is 3 or 3, you are prone to this situation.
If it is 4 rows, there will be no stack overflow.

void lv_ex_tileview_1(void)
{
    static lv_point_t valid_pos[] = {{0,0}, {0, 1}, {0,2}};
    lv_obj_t *tileview;
    tileview = lv_tileview_create(lv_scr_act(), NULL);
    lv_tileview_set_valid_positions(tileview, valid_pos, 3);
    lv_tileview_set_edge_flash(tileview, true);

    lv_obj_t * tile1 = lv_obj_create(tileview, NULL);
    lv_obj_set_size(tile1, LV_HOR_RES, LV_VER_RES/2);
    lv_tileview_add_element(tileview, tile1);

    /*Tile1: just a label*/
    lv_obj_t * label = lv_label_create(tile1, NULL);
    lv_label_set_text(label, "Scroll down");
    lv_obj_align(label, NULL, LV_ALIGN_CENTER, 0, 0);

	lv_obj_t * tile2 = lv_obj_create(tileview, NULL);
	lv_obj_set_size(tile2, LV_HOR_RES, LV_VER_RES/2);
	lv_obj_set_pos(tile2, 0, LV_VER_RES/2);
	lv_tileview_add_element(tileview, tile2);

	/*Tile2: just a label*/
	lv_obj_t * labe2 = lv_label_create(tile2, NULL);
	lv_label_set_text(labe2, "Scroll down2");
	lv_obj_align(labe2, NULL, LV_ALIGN_CENTER, 0, 0);

	lv_obj_t * tile3 = lv_obj_create(tileview, NULL);
	lv_obj_set_size(tile3, LV_HOR_RES, LV_VER_RES/2);
	lv_obj_set_pos(tile3, 0, LV_VER_RES);
	lv_tileview_add_element(tileview, tile3);

	/*Tile3: just a label*/
	lv_obj_t * labe3 = lv_label_create(tile3, NULL);
	lv_label_set_text(labe3, "Scroll down3");
	lv_obj_align(labe3, NULL, LV_ALIGN_CENTER, 0, 0);

    ///*Tile2: a list*/
    //lv_obj_t * list = lv_list_create(tileview, NULL);
    //lv_obj_set_size(list, LV_HOR_RES, LV_VER_RES);
    //lv_obj_set_pos(list, 0, LV_VER_RES);
    //lv_list_set_scroll_propagation(list, true);
    //lv_list_set_scrollbar_mode(list, LV_SCROLLBAR_MODE_OFF);

    //lv_list_add_btn(list, NULL, "One");
    //lv_list_add_btn(list, NULL, "Two");
    //lv_list_add_btn(list, NULL, "Three");
    //lv_list_add_btn(list, NULL, "Four");
    //lv_list_add_btn(list, NULL, "Five");
    //lv_list_add_btn(list, NULL, "Six");
    //lv_list_add_btn(list, NULL, "Seven");
    //lv_list_add_btn(list, NULL, "Eight");

    ///*Tile3: a button*/
    //lv_obj_t * tile3 = lv_obj_create(tileview, tile1);
    //lv_obj_set_pos(tile3, LV_HOR_RES, LV_VER_RES);
    //lv_tileview_add_element(tileview, tile3);

    //lv_obj_t * btn = lv_btn_create(tile3, NULL);
    //lv_obj_align(btn, NULL, LV_ALIGN_CENTER, 0, 0);
    //lv_tileview_add_element(tileview, btn);
    //label = lv_label_create(btn, NULL);
    //lv_label_set_text(label, "No scroll up");
}

To test it, drag the page to the bottom, then hold down the mouse and drag a reasonable distance to the left or right, then release the mouse.