summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/lib/ecore_drm2/ecore_drm2_outputs.c9
1 files changed, 9 insertions, 0 deletions
diff --git a/src/lib/ecore_drm2/ecore_drm2_outputs.c b/src/lib/ecore_drm2/ecore_drm2_outputs.c
index 6fe2180b68..a48170ca97 100644
--- a/src/lib/ecore_drm2/ecore_drm2_outputs.c
+++ b/src/lib/ecore_drm2/ecore_drm2_outputs.c
@@ -234,6 +234,15 @@ _output_crtc_find(const drmModeRes *res, const drmModeConnector *conn, Ecore_Drm
234 uint32_t crtc; 234 uint32_t crtc;
235 int i = 0, j = 0; 235 int i = 0, j = 0;
236 236
237 /* Skip all disconnected connectors...
238 *
239 * When a connector is disconnected it still has an encoder id
240 * which messes up our output selection code later. When we support
241 * multi-head properly and hotplug becomes a real thing we'll
242 * need to revisit this hack (and the crtc assignment code as well)
243 */
244 if (conn->connection != DRM_MODE_CONNECTED) return -1;
245
237 for (j = 0; j < conn->count_encoders; j++) 246 for (j = 0; j < conn->count_encoders; j++)
238 { 247 {
239 enc = drmModeGetEncoder(dev->fd, conn->encoders[j]); 248 enc = drmModeGetEncoder(dev->fd, conn->encoders[j]);