modesetting: Reset output_id if drmModeGetConnector failed

If drmModeGetConnector() fails in drmmode_output_detect(), we have to
reset the output_id to -1 too.

Yet another spot leading to a potential NULL dereference when handling
the mode_output member as output_id was != -1. Though, this case should
be very hard to hit.

Reviewed-by: Adam Jackson <ajax@redhat.com>
Signed-off-by: Daniel Martin <consume.noise@gmail.com>
This commit is contained in:
Daniel Martin 2017-11-20 10:47:41 +01:00 committed by Adam Jackson
parent e20b1016de
commit 6804875662

View File

@ -1151,8 +1151,10 @@ drmmode_output_detect(xf86OutputPtr output)
drmmode_output->mode_output =
drmModeGetConnector(drmmode->fd, drmmode_output->output_id);
if (!drmmode_output->mode_output)
if (!drmmode_output->mode_output) {
drmmode_output->output_id = -1;
return XF86OutputStatusDisconnected;
}
switch (drmmode_output->mode_output->connection) {
case DRM_MODE_CONNECTED: