devilhorns pushed a commit to branch master.

http://git.enlightenment.org/core/efl.git/commit/?id=ba4042da1e25ee8ff0f95be242b5a865a0141669

commit ba4042da1e25ee8ff0f95be242b5a865a0141669
Author: Chris Michael <cp.mich...@samsung.com>
Date:   Tue May 30 11:00:20 2017 -0400

    ecore-drm2: Don't fill output atomic states if not using atomic
    
    If atomic support is not enabled (kernel or env var), then we should
    not be filling in output atomic state
    
    @fix
    
    Signed-off-by: Chris Michael <cp.mich...@samsung.com>
---
 src/lib/ecore_drm2/ecore_drm2_outputs.c | 22 ++++++++++++++--------
 1 file changed, 14 insertions(+), 8 deletions(-)

diff --git a/src/lib/ecore_drm2/ecore_drm2_outputs.c 
b/src/lib/ecore_drm2/ecore_drm2_outputs.c
index ae1a0c9654..3173165aa5 100644
--- a/src/lib/ecore_drm2/ecore_drm2_outputs.c
+++ b/src/lib/ecore_drm2/ecore_drm2_outputs.c
@@ -766,12 +766,15 @@ _output_create(Ecore_Drm2_Device *dev, const drmModeRes 
*res, const drmModeConne
 
    output->ocrtc = sym_drmModeGetCrtc(dev->fd, output->crtc_id);
 
-   output->crtc_state =
-     _output_crtc_state_get(dev->state, output->crtc_id);
-   output->conn_state =
-     _output_conn_state_get(dev->state, output->conn_id);
-   output->plane_states =
-     _output_plane_states_get(dev->state, output->crtc_id, output->pipe);
+   if (_ecore_drm2_use_atomic)
+     {
+        output->crtc_state =
+          _output_crtc_state_get(dev->state, output->crtc_id);
+        output->conn_state =
+          _output_conn_state_get(dev->state, output->conn_id);
+        output->plane_states =
+          _output_plane_states_get(dev->state, output->crtc_id, output->pipe);
+     }
 
    output->dpms = _output_dpms_property_get(dev->fd, conn);
 
@@ -926,8 +929,11 @@ _output_destroy(Ecore_Drm2_Device *dev, Ecore_Drm2_Output 
*output)
    EINA_LIST_FREE(output->planes, plane)
      free(plane);
 
-   free(output->conn_state);
-   free(output->crtc_state);
+   if (_ecore_drm2_use_atomic)
+     {
+        free(output->conn_state);
+        free(output->crtc_state);
+     }
 
    EINA_LIST_FREE(output->modes, mode)
      {

-- 


Reply via email to