summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorFurkan Sahin <furkan-dev@proton.me>2024-04-12 19:20:36 +0200
committerFurkan Sahin <furkan-dev@proton.me>2024-04-12 19:20:36 +0200
commitbdfd4dff23814b86e76275c6a4072f31eb42fa95 (patch)
treed0128a069430540082c85e48b302f03a8d466df7
parentb4811ef7c498f6d8b0293f3c07b2a7a7cf5306a5 (diff)
tree/container: ensure pixman rect is valid in container_arrange_title_bar()
Fixes "Invalid rectangle passed" errors printed by Pixman.
-rw-r--r--sway/tree/container.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/sway/tree/container.c b/sway/tree/container.c
index 9224b4fb..80ef34fe 100644
--- a/sway/tree/container.c
+++ b/sway/tree/container.c
@@ -352,6 +352,8 @@ void container_arrange_title_bar(struct sway_container *con) {
int alloc_width = MIN((int)node->width,
width - h_padding - config->titlebar_h_padding);
+ alloc_width = MAX(alloc_width, 0);
+
sway_text_node_set_max_width(node, alloc_width);
wlr_scene_node_set_position(node->node,
h_padding, (height - node->height) >> 1);
@@ -376,6 +378,8 @@ void container_arrange_title_bar(struct sway_container *con) {
int alloc_width = MIN((int) node->width,
width - h_padding - config->titlebar_h_padding);
+ alloc_width = MAX(alloc_width, 0);
+
sway_text_node_set_max_width(node, alloc_width);
wlr_scene_node_set_position(node->node,
h_padding, (height - node->height) >> 1);