From 960089399754560dd49bcba121f430fa1fe0ce0a Mon Sep 17 00:00:00 2001 From: Hyunsoo Park Date: Wed, 22 Apr 2020 12:16:03 +0900 Subject: [PATCH] Fix unexpected error return case Change-Id: I62c178eafc67915092a656629b8901ff0a833875 Signed-off-by: Hyunsoo Park --- packaging/libmm-wfd.spec | 2 +- src/mm_wfd_sink_priv.c | 13 +++++++------ 2 files changed, 8 insertions(+), 7 deletions(-) diff --git a/packaging/libmm-wfd.spec b/packaging/libmm-wfd.spec index 14e54f4..cff9286 100644 --- a/packaging/libmm-wfd.spec +++ b/packaging/libmm-wfd.spec @@ -1,6 +1,6 @@ Name: libmm-wfd Summary: Multimedia Framework Wifi-Display Library -Version: 0.3.3 +Version: 0.3.4 Release: 0 Group: System/Libraries License: Apache-2.0 diff --git a/src/mm_wfd_sink_priv.c b/src/mm_wfd_sink_priv.c index c125776..6fdb339 100644 --- a/src/mm_wfd_sink_priv.c +++ b/src/mm_wfd_sink_priv.c @@ -241,6 +241,7 @@ int _mm_wfd_sink_create(mm_wfd_sink_t **wfd_sink, const char *ini_path) /* construct attributes */ new_wfd_sink->attrs = _mmwfd_construct_attribute((MMHandleType)new_wfd_sink); if (!new_wfd_sink->attrs) { + result = MM_ERROR_WFD_INTERNAL; wfd_sink_error("failed to set attribute"); goto fail_to_attrs; } @@ -552,19 +553,19 @@ int _mm_wfd_sink_destroy(mm_wfd_sink_t *wfd_sink) /* release attributes */ _mmwfd_deconstruct_attribute(wfd_sink->attrs); + /* release the others */ + g_free(wfd_sink->coupled_sink_address); + /* release resource manager */ - if(MM_ERROR_NONE != mm_resource_manager_destroy(wfd_sink->resource_manager)) { + if (MM_ERROR_NONE != mm_resource_manager_destroy(wfd_sink->resource_manager)) { + result = MM_ERROR_WFD_INTERNAL; wfd_sink_error("failed to destroy resource manager"); - return MM_ERROR_WFD_INTERNAL; } - /* release the others */ - g_free(wfd_sink->coupled_sink_address); - /* release manager thread */ if (MM_ERROR_NONE != _mm_wfd_sink_release_manager(wfd_sink)) { + result = MM_ERROR_WFD_INTERNAL; wfd_sink_error("failed to release manager"); - return MM_ERROR_WFD_INTERNAL; } /* set state */ -- 2.7.4