aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authoremersion <contact@emersion.fr>2018-10-07 13:04:52 +0200
committeremersion <contact@emersion.fr>2018-10-07 13:04:52 +0200
commit37de179013987ae56ef40cc2cccf570e3b1a0351 (patch)
treef71d482c54290769bf8d62ee1dc95f207ad9d280
parent776008da69fad8b776c93b42b19426c7ae43f326 (diff)
backend/drm: fix zero-length VLAs
-rw-r--r--backend/drm/drm.c8
1 files changed, 4 insertions, 4 deletions
diff --git a/backend/drm/drm.c b/backend/drm/drm.c
index 19dad63d..272a168c 100644
--- a/backend/drm/drm.c
+++ b/backend/drm/drm.c
@@ -438,9 +438,9 @@ static void realloc_planes(struct wlr_drm_backend *drm, const uint32_t *crtc_in,
continue;
}
- uint32_t possible[drm->num_type_planes[type]];
- uint32_t crtc[drm->num_crtcs];
- uint32_t crtc_res[drm->num_crtcs];
+ uint32_t possible[drm->num_type_planes[type] + 1];
+ uint32_t crtc[drm->num_crtcs + 1];
+ uint32_t crtc_res[drm->num_crtcs + 1];
for (size_t i = 0; i < drm->num_type_planes[type]; ++i) {
possible[i] = drm->type_planes[type][i].possible_crtcs;
@@ -1165,7 +1165,7 @@ void scan_drm_connectors(struct wlr_drm_backend *drm) {
}
}
- bool changed_outputs[wl_list_length(&drm->outputs)];
+ bool changed_outputs[wl_list_length(&drm->outputs) + 1];
memset(changed_outputs, false, sizeof(changed_outputs));
for (size_t i = 0; i < new_outputs_len; ++i) {
struct wlr_drm_connector *conn = new_outputs[i];