summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChris Michael <cp.michael@samsung.com>2014-10-22 09:12:29 -0400
committerChris Michael <cp.michael@samsung.com>2014-10-22 09:24:14 -0400
commit826d6f1bc29529292d236c02e444d2ecb11da9e0 (patch)
treea4f1168873f53a6978fe4fcd4352b8041f9fc3f3
parent263a04b6dd3b1a706b05eb8f2e5346398105a1c5 (diff)
downloadefl-826d6f1bc29529292d236c02e444d2ecb11da9e0.tar.gz
ecore-drm: Cleanup/Unify output_free function code
Summary: There is no point in having different code in each output free function (internal one and API exposed one), so let's unify the code here. @fix Signed-off-by: Chris Michael <cp.michael@samsung.com>
-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