cellarea: Don't shrink area too much

Do not compute rectangles with negative width/height. This avoids
assertion failures further down when those rectangles were actually
checked.

https://bugzilla.redhat.com/show_bug.cgi?id=1962215
This commit is contained in:
Benjamin Otte 2021-06-15 19:34:37 +02:00
parent 494bc00687
commit 4ba89f25b8

View File

@ -3563,8 +3563,18 @@ gtk_cell_area_inner_cell_area (GtkCellArea *area,
*inner_area = *cell_area;
if (border.left + border.right > cell_area->width)
{
border.left = cell_area->width / 2;
border.right = (cell_area->width + 1) / 2;
}
inner_area->x += border.left;
inner_area->width -= border.left + border.right;
if (border.top + border.bottom > cell_area->height)
{
border.top = cell_area->height / 2;
border.bottom = (cell_area->height + 1) / 2;
}
inner_area->y += border.top;
inner_area->height -= border.top + border.bottom;
}