summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/lib/ecore_drm/ecore_drm_output.c31
1 files changed, 10 insertions, 21 deletions
diff --git a/src/lib/ecore_drm/ecore_drm_output.c b/src/lib/ecore_drm/ecore_drm_output.c
index 1b46e6bec8..af635b5757 100644
--- a/src/lib/ecore_drm/ecore_drm_output.c
+++ b/src/lib/ecore_drm/ecore_drm_output.c
@@ -556,15 +556,21 @@ _ecore_drm_output_free(Ecore_Drm_Output *output)
{
Ecore_Drm_Output_Mode *mode;
+ /* check for valid output */
if (!output) return;
- eina_stringshare_del(output->make);
- eina_stringshare_del(output->model);
- eina_stringshare_del(output->name);
+ /* delete any added udev watch */
+ if (output->watch) eeze_udev_watch_del(output->watch);
+ /* free modes */
EINA_LIST_FREE(output->modes, mode)
free(mode);
+ /* free strings */
+ if (output->name) eina_stringshare_del(output->name);
+ if (output->model) eina_stringshare_del(output->model);
+ if (output->make) eina_stringshare_del(output->make);
+
drmModeFreeCrtc(output->crtc);
free(output);
@@ -777,24 +783,7 @@ ecore_drm_outputs_create(Ecore_Drm_Device *dev)
EAPI void
ecore_drm_output_free(Ecore_Drm_Output *output)
{
- Ecore_Drm_Output_Mode *mode;
-
- /* check for valid output */
- if (!output) return;
-
- /* delete any added udev watch */
- if (output->watch) eeze_udev_watch_del(output->watch);
-
- /* free modes */
- EINA_LIST_FREE(output->modes, mode)
- free(mode);
-
- /* free strings */
- if (output->name) eina_stringshare_del(output->name);
- if (output->model) eina_stringshare_del(output->model);
- if (output->make) eina_stringshare_del(output->make);
-
- free(output);
+ _ecore_drm_output_free(output);
}
EAPI void