From 34bb2e733a612de49a390babddd8477825deb895 Mon Sep 17 00:00:00 2001
From: Dave Airlie <airlied@redhat.com>
Date: Mon, 3 Dec 2007 15:27:49 +1000
Subject: mode: copy back the mode if is valid correctly

---
 libdrm/xf86drmMode.c | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/libdrm/xf86drmMode.c b/libdrm/xf86drmMode.c
index cf596730..bb7be13c 100644
--- a/libdrm/xf86drmMode.c
+++ b/libdrm/xf86drmMode.c
@@ -263,7 +263,9 @@ drmModeCrtcPtr drmModeGetCrtc(int fd, uint32_t crtcId)
 	r->crtc_id         = crtc.crtc_id;
 	r->x               = crtc.x;
 	r->y               = crtc.y;
-	r->mode            = crtc.mode;
+	r->mode_valid      = crtc.mode_valid;
+	if (r->mode_valid)
+		memcpy(&r->mode, &crtc.mode, sizeof(struct drm_mode_modeinfo));
 	r->buffer_id       = crtc.fb_id;
 	r->gamma_size      = crtc.gamma_size;
 	r->count_outputs   = crtc.count_outputs;
-- 
cgit v1.2.3