compositor-drm: Don't try and scan out a SHM buffer directly 45/1745/1
authorRob Bradford <rob@linux.intel.com>
Fri, 14 Sep 2012 22:02:47 +0000 (23:02 +0100)
committerRob Bradford <rob@linux.intel.com>
Fri, 14 Sep 2012 22:09:15 +0000 (23:09 +0100)
gbm_bo_import will fail to produce a valid bo since the buffer is an SHM
buffer. This cause a crash when the NULL bo returned by gbm_bo_import is
dereferenced later.

Signed-off-by: Rob Bradford <rob@linux.intel.com>
src/compositor-drm.c

index 0faf45c..10f16bd 100644 (file)
@@ -289,6 +289,9 @@ drm_output_prepare_scanout_surface(struct weston_output *_output,
            es->buffer == NULL)
                return NULL;
 
+       if (wl_buffer_is_shm(es->buffer))
+               return NULL;
+
        bo = gbm_bo_import(c->gbm, GBM_BO_IMPORT_WL_BUFFER,
                           es->buffer, GBM_BO_USE_SCANOUT);