modesetting: Check crtc before searching link-status property

No need to lookup the link-status property if we don't have a crtc.

Signed-off-by: Daniel Martin <consume.noise@gmail.com>
Reviewed-by: Adam Jackson <ajax@redhat.com>
This commit is contained in:
Daniel Martin 2017-10-20 10:05:35 +02:00 committed by Adam Jackson
parent 8c455db0eb
commit 8d7f7e2426

View File

@ -2270,12 +2270,14 @@ drmmode_handle_uevents(int fd, void *closure)
*/
for (i = 0; i < config->num_output; i++) {
xf86OutputPtr output = config->output[i];
xf86CrtcPtr crtc = output->crtc;
drmmode_output_private_ptr drmmode_output = output->driver_private;
uint32_t con_id;
drmModeConnectorPtr koutput;
if (drmmode_output->mode_output == NULL)
if (crtc == NULL || drmmode_output->mode_output == NULL)
continue;
con_id = drmmode_output->mode_output->connector_id;
/* Get an updated view of the properties for the current connector and
* look for the link-status property
@ -2287,10 +2289,6 @@ drmmode_handle_uevents(int fd, void *closure)
if (props && props->flags & DRM_MODE_PROP_ENUM &&
!strcmp(props->name, "link-status") &&
koutput->prop_values[j] == DRM_MODE_LINK_STATUS_BAD) {
xf86CrtcPtr crtc = output->crtc;
if (!crtc)
continue;
/* the connector got a link failure, re-set the current mode */
drmmode_set_mode_major(crtc, &crtc->mode, crtc->rotation,
crtc->x, crtc->y);