diff options
author | Daniel van Vugt <daniel.van.vugt@canonical.com> | 2022-03-29 18:08:27 +0800 |
---|---|---|
committer | Daniel van Vugt <daniel.van.vugt@canonical.com> | 2022-03-29 18:13:11 +0800 |
commit | b2805dd5a6c22a102b7a59111bbde15a78861468 (patch) | |
tree | 72d3df368456d08dd46c62c523771187e86e183d | |
parent | 58bcd30ee6ff321b58674ccf47d1a8440dca2c94 (diff) | |
download | mutter-b2805dd5a6c22a102b7a59111bbde15a78861468.tar.gz |
clutter/pick-stack: Avoid uninitialized cairo_region_subtract_rectangle
This fixes instances of:
```
*** BUG ***
In pixman_region32_init_rect: Invalid rectangle passed
Set a breakpoint on '_pixman_log_error' to debug
```
seen when navigating the overview and launching apps.
Part-of: <https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/2349>
-rw-r--r-- | clutter/clutter/clutter-pick-stack.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/clutter/clutter/clutter-pick-stack.c b/clutter/clutter/clutter-pick-stack.c index db5c8d385..e11d2489c 100644 --- a/clutter/clutter/clutter-pick-stack.c +++ b/clutter/clutter/clutter-pick-stack.c @@ -491,7 +491,9 @@ calculate_clear_area (ClutterPickStack *pick_stack, rec->base.rect.y1 == rec->base.rect.y2)) continue; - clutter_actor_get_paint_box (rec->actor, &paint_box); + if (!clutter_actor_get_paint_box (rec->actor, &paint_box)) + continue; + cairo_region_subtract_rectangle (area, &(cairo_rectangle_int_t) { .x = paint_box.x1, |