aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTimidger <APragmaticPlace@gmail.com>2018-01-21 15:37:23 -0500
committerTimidger <APragmaticPlace@gmail.com>2018-01-21 15:37:23 -0500
commit9d4ea146b66282e4cee6aedc8e0f27db3561d9a3 (patch)
treea631d067f2f3be4b5d1321b145b177ad560ac22a
parent4478cf1ddc9109dd39ed447bdab854838a423e2a (diff)
Added crtc null check for other drm funcs
-rw-r--r--backend/drm/drm.c9
1 files changed, 9 insertions, 0 deletions
diff --git a/backend/drm/drm.c b/backend/drm/drm.c
index 30eb1256..c3cdd9f8 100644
--- a/backend/drm/drm.c
+++ b/backend/drm/drm.c
@@ -193,6 +193,9 @@ static void wlr_drm_connector_swap_buffers(struct wlr_output *output) {
struct wlr_drm_backend *drm = (struct wlr_drm_backend *)output->backend;
struct wlr_drm_crtc *crtc = conn->crtc;
+ if (!crtc) {
+ return;
+ }
struct wlr_drm_plane *plane = crtc->primary;
struct gbm_bo *bo = wlr_drm_surface_swap_buffers(&plane->surf);
@@ -230,6 +233,9 @@ void wlr_drm_connector_start_renderer(struct wlr_drm_connector *conn) {
struct wlr_drm_backend *drm = (struct wlr_drm_backend *)conn->output.backend;
struct wlr_drm_crtc *crtc = conn->crtc;
+ if (!crtc) {
+ return;
+ }
struct wlr_drm_plane *plane = crtc->primary;
struct gbm_bo *bo = wlr_drm_surface_get_front(
@@ -450,6 +456,9 @@ static bool wlr_drm_connector_set_mode(struct wlr_output *output,
}
struct wlr_drm_crtc *crtc = conn->crtc;
+ if (!crtc) {
+ return false;
+ }
wlr_log(L_DEBUG, "%s: crtc=%ju ovr=%jd pri=%jd cur=%jd", conn->output.name,
crtc - drm->crtcs,
crtc->overlay ? crtc->overlay - drm->overlay_planes : -1,