xf86-video-intel: 3 commits - src/intel_display.c src/intel_shadow.c

Chris Wilson ickle at kemper.freedesktop.org
Mon Jun 4 04:44:39 PDT 2012


 src/intel_display.c |    6 ++++++
 src/intel_shadow.c  |    4 +++-
 2 files changed, 9 insertions(+), 1 deletion(-)

New commits:
commit ff91fd4a2749f1ea8722189aaec938e51bce4222
Author: Chris Wilson <chris at chris-wilson.co.uk>
Date:   Mon Jun 4 12:41:05 2012 +0100

    uxa: Check for failure from drmModeGetConnector()
    
    Reported-by: Zdenek Kabelac <zkabelac at redhat.com>
    Signed-off-by: Chris Wilson <chris at chris-wilson.co.uk>

diff --git a/src/intel_display.c b/src/intel_display.c
index fcb3239..7d75abb 100644
--- a/src/intel_display.c
+++ b/src/intel_display.c
@@ -717,6 +717,12 @@ intel_output_detect(xf86OutputPtr output)
 	drmModeFreeConnector(intel_output->mode_output);
 	intel_output->mode_output =
 		drmModeGetConnector(mode->fd, intel_output->output_id);
+	if (intel_output->mode_output == NULL) {
+		/* and hope we are safe everywhere else */
+		xf86DrvMsg(output->scrn->scrnIndex, X_ERROR,
+			   "drmModeGetConnector failed, reporting output disconnected\n");
+		return XF86OutputStatusDisconnected;
+	}
 
 	switch (intel_output->mode_output->connection) {
 	case DRM_MODE_CONNECTED:
commit 4712a4008aaff7b3c57a8dd0a5e639992c9b6d30
Author: Chris Wilson <chris at chris-wilson.co.uk>
Date:   Mon Jun 4 12:40:56 2012 +0100

    shadow

diff --git a/src/intel_shadow.c b/src/intel_shadow.c
index 1342b79..6892567 100644
--- a/src/intel_shadow.c
+++ b/src/intel_shadow.c
@@ -182,7 +182,7 @@ void intel_shadow_create(struct intel_screen_private *intel)
 		free(intel->shadow_buffer);
 		intel->shadow_buffer = buffer;
 	} else {
-		free(bufer);
+		free(buffer);
 		stride = intel->shadow_stride;
 	}
 
commit 63a55e9db97b647cbf7385403a0f30ee4d24dc3b
Author: Chris Wilson <chris at chris-wilson.co.uk>
Date:   Mon Jun 4 12:36:11 2012 +0100

    uxa/shadow: Free the buffer along the unexpected failure to attach to the pixmap
    
    Reported-by: Zdenek Kabelac <zkabelac at redhat.com>
    Signed-off-by: Chris Wilson <chris at chris-wilson.co.uk>

diff --git a/src/intel_shadow.c b/src/intel_shadow.c
index 393a038..1342b79 100644
--- a/src/intel_shadow.c
+++ b/src/intel_shadow.c
@@ -181,8 +181,10 @@ void intel_shadow_create(struct intel_screen_private *intel)
 				       stride, buffer)) {
 		free(intel->shadow_buffer);
 		intel->shadow_buffer = buffer;
-	} else
+	} else {
+		free(bufer);
 		stride = intel->shadow_stride;
+	}
 
 	if (!intel->shadow_damage) {
 		intel->shadow_damage =


More information about the xorg-commit mailing list