This is an automated email from the git hooks/post-receive script.

git pushed a commit to branch devs/devilhorns/apos
in repository efl.

View the commit online.

commit 45ef76a41fbf270eb1dff4961275a1876fc3e9ad
Author: Christopher Michael <devilho...@comcast.net>
AuthorDate: Sun Aug 21 11:18:01 2022 -0400

    ecore-drm2: Add code to free Atomic State on device close
---
 src/lib/ecore_drm2/ecore_drm2_atomic.c  | 9 +++++++++
 src/lib/ecore_drm2/ecore_drm2_device.c  | 2 +-
 src/lib/ecore_drm2/ecore_drm2_private.h | 1 +
 3 files changed, 11 insertions(+), 1 deletion(-)

diff --git a/src/lib/ecore_drm2/ecore_drm2_atomic.c b/src/lib/ecore_drm2/ecore_drm2_atomic.c
index d931ab869c..13c7cd56d5 100644
--- a/src/lib/ecore_drm2/ecore_drm2_atomic.c
+++ b/src/lib/ecore_drm2/ecore_drm2_atomic.c
@@ -440,3 +440,12 @@ crtc_err:
    sym_drmModeFreeResources(res);
    return EINA_FALSE;
 }
+
+void
+_ecore_drm2_atomic_state_free(Ecore_Drm2_Atomic_State *state)
+{
+   free(state->plane_states);
+   free(state->conn_states);
+   free(state->crtc_states);
+   free(state);
+}
diff --git a/src/lib/ecore_drm2/ecore_drm2_device.c b/src/lib/ecore_drm2/ecore_drm2_device.c
index 279bb68b23..47b8764467 100644
--- a/src/lib/ecore_drm2/ecore_drm2_device.c
+++ b/src/lib/ecore_drm2/ecore_drm2_device.c
@@ -202,7 +202,7 @@ ecore_drm2_device_close(Ecore_Drm2_Device *dev)
 {
    EINA_SAFETY_ON_NULL_RETURN(dev);
 
-   /* TODO: atomic state free */
+   _ecore_drm2_atomic_state_free(dev->atomic_state);
 
    elput_input_shutdown(dev->em);
    elput_manager_close(dev->em, dev->fd);
diff --git a/src/lib/ecore_drm2/ecore_drm2_private.h b/src/lib/ecore_drm2/ecore_drm2_private.h
index fb73b72e6c..2977d601b4 100644
--- a/src/lib/ecore_drm2/ecore_drm2_private.h
+++ b/src/lib/ecore_drm2/ecore_drm2_private.h
@@ -172,6 +172,7 @@ struct _Ecore_Drm2_Output
 
 /* internal function prototypes */
 Eina_Bool _ecore_drm2_atomic_state_fill(Ecore_Drm2_Atomic_State *state, int fd);
+void _ecore_drm2_atomic_state_free(Ecore_Drm2_Atomic_State *state);
 
 /* external drm function prototypes (for dlopen) */
 extern void *(*sym_drmModeGetResources)(int fd);

-- 
To stop receiving notification emails like this one, please contact
the administrator of this repository.

Reply via email to