Fix unexpected error return case 22/231422/2
authorHyunsoo Park <hance.park@samsung.com>
Wed, 22 Apr 2020 03:16:03 +0000 (12:16 +0900)
committerHyunsoo Park <hance.park@samsung.com>
Wed, 22 Apr 2020 04:20:35 +0000 (13:20 +0900)
Change-Id: I62c178eafc67915092a656629b8901ff0a833875
Signed-off-by: Hyunsoo Park <hance.park@samsung.com>
packaging/libmm-wfd.spec
src/mm_wfd_sink_priv.c

index 14e54f430cd18e1d6a22efb1a59e502230ccc58f..cff92863507daf7b5eb59d273f9598ce726743f0 100644 (file)
@@ -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
index c1257765f02e6772f2ba1794638b462641cdef69..6fdb339f8f823a2347273c76fdc8fc50535559a1 100644 (file)
@@ -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 */