aboutsummaryrefslogtreecommitdiff
path: root/render
diff options
context:
space:
mode:
authorGuido Cella <guidocella91@gmail.com>2020-08-27 15:40:15 +0200
committerSimon Ser <contact@emersion.fr>2020-08-27 17:39:31 +0200
commit6949d0fd381dcb5df61d78b34b325473a113f279 (patch)
tree390193e2f1041ad4198922ee979ae289319902ed /render
parent2072d59da54ac772410271ad2219ca107a7fff48 (diff)
render: Don't crash on 0 dimensions
Don't force compositors to check when an empty shape is being renderered. References #2282. This was motivated by dwl crashing when setting window borders to 0 (djpohly/dwl#51).
Diffstat (limited to 'render')
-rw-r--r--render/wlr_renderer.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/render/wlr_renderer.c b/render/wlr_renderer.c
index 593d165f..8fa11cc9 100644
--- a/render/wlr_renderer.c
+++ b/render/wlr_renderer.c
@@ -99,6 +99,9 @@ bool wlr_render_subtexture_with_matrix(struct wlr_renderer *r,
void wlr_render_rect(struct wlr_renderer *r, const struct wlr_box *box,
const float color[static 4], const float projection[static 9]) {
+ if (box->width == 0 || box->height == 0) {
+ return;
+ }
assert(box->width > 0 && box->height > 0);
float matrix[9];
wlr_matrix_project_box(matrix, box, WL_OUTPUT_TRANSFORM_NORMAL, 0,
@@ -115,6 +118,9 @@ void wlr_render_quad_with_matrix(struct wlr_renderer *r,
void wlr_render_ellipse(struct wlr_renderer *r, const struct wlr_box *box,
const float color[static 4], const float projection[static 9]) {
+ if (box->width == 0 || box->height == 0) {
+ return;
+ }
assert(box->width > 0 && box->height > 0);
float matrix[9];
wlr_matrix_project_box(matrix, box, WL_OUTPUT_TRANSFORM_NORMAL, 0,