Fix 'GError *error' memory leak 45/274145/2 accepted/tizen/unified/20220426.021424 submit/tizen/20220424.231651
authorjiyong.min <jiyong.min@samsung.com>
Fri, 22 Apr 2022 06:07:04 +0000 (15:07 +0900)
committerjiyong.min <jiyong.min@samsung.com>
Fri, 22 Apr 2022 06:56:43 +0000 (15:56 +0900)
Change-Id: I44995a685e603fcf0fdbf5ab5148dc16f9230bc2

anim/test/mm_util_anim_testsuite.c
heif/test/mm_util_heif_testsuite.c
jxl/mm_util_jxl.c
jxl/test/mm_util_jxl_testsuite.c
magick/mm_util_magick.c
magick/test/mm_util_magick_testsuite.c
packaging/libmm-utility.spec
webp/mm_util_webp.c
webp/test/mm_util_webp_testsuite.c

index 4d89a20..068733b 100644 (file)
@@ -116,8 +116,7 @@ static gboolean __set_input_dir(const char *path)
        dir = g_dir_open(path, 0, &g_error);
        if (!dir) {
                g_print("\t[ANIM_testsuite] invalid directory: %s (%s)\n", path, g_error ? g_error->message : "none");
-               if (g_error)
-                       g_error_free(g_error);
+               g_error_free(g_error);
                return FALSE;
        }
 
@@ -289,8 +288,7 @@ static gboolean __test_encode_to_buffer(mm_util_img_codec_type type, const char
 
        if (!g_file_set_contents(path, (gchar *)encoded_data, (gssize)encoded_size, &g_error)) {
                fprintf(stderr, "\t[ANIM_testsuite] g_file_set_contents failed : %s\n", g_error ? g_error->message : "none");
-               if (g_error)
-                       g_error_free(g_error);
+               g_error_free(g_error);
        }
 
 END:
index a776f93..ea4da62 100644 (file)
@@ -168,8 +168,7 @@ static gboolean __test_decode(const heif_test_mode_e mode, mm_util_color_format_
        } else if (mode == TEST_DECODE_BUFFER) {
                if (!g_file_get_contents(g_path, &g_readed_data, &g_readed_size, &error)) {
                        g_print("\t[HEIF_testsuite] reading file error(%s)\n", (error ? error->message : "none"));
-                       if (error)
-                               g_error_free(error);
+                       g_error_free(error);
                        return FALSE;
                }
 
index 34ee730..723767a 100644 (file)
@@ -147,8 +147,7 @@ static bool __read_file(const char *path, void **data, size_t size)
 
        if (!g_file_get_contents(path, &read_data, &read_n, &error)) {
                mm_util_error("g_file_get_contents error(%s)", (error ? error->message : "none"));
-               if (error)
-                       g_error_free(error);
+               g_error_free(error);
                return false;
        }
 
@@ -178,8 +177,7 @@ static bool __write_file(const char *path, void *data, size_t size)
 
        if (!g_file_set_contents(path, (const gchar *)data, (gssize)size, &error)) {
                mm_util_error("g_file_set_contents error(%s)", (error ? error->message : "none"));
-               if (error)
-                       g_error_free(error);
+               g_error_free(error);
                return false;
        }
 
index 5b3b449..935338a 100644 (file)
@@ -173,8 +173,7 @@ static gboolean __get_decoded_data(void)
 
        if (!g_file_get_contents(g_path, &g_readed_data, &g_readed_size, &error)) {
                g_print("\t[JXL_testsuite] reading file error(%s)\n", (error ? error->message : "none"));
-               if (error)
-                       g_error_free(error);
+               g_error_free(error);
                return FALSE;
        }
        ret = mm_image_create_image(g_width, g_height, g_color,
@@ -234,8 +233,7 @@ static gboolean __test_decode(const jxl_test_mode_e mode, mm_util_color_format_e
        } else if (mode == TEST_DECODE_BUFFER) {
                if (!g_file_get_contents(g_path, &g_readed_data, &g_readed_size, &error)) {
                        g_print("\t[JXL_testsuite] reading file error(%s)\n", (error ? error->message : "none"));
-                       if (error)
-                               g_error_free(error);
+                       g_error_free(error);
                        return FALSE;
                }
 
@@ -279,8 +277,10 @@ static gboolean __test_encode(const jxl_test_mode_e mode, mm_util_color_format_e
                        SAFE_FREE(encoded_data);
                        return FALSE;
                }
-               if (FALSE == g_file_set_contents(g_test_filename[mode][color], encoded_data, encoded_size, &error))
+               if (FALSE == g_file_set_contents(g_test_filename[mode][color], encoded_data, encoded_size, &error)) {
                        g_print("\t[JXL_testsuite] g_file_set_contents failed : %s\n", (error ? error->message : "none"));
+                       g_error_free(error);
+               }
 
                SAFE_FREE(encoded_data);
        }
index 639f6a2..ed7ab7c 100644 (file)
@@ -486,8 +486,8 @@ static int __mm_util_make_tmp_file(mm_util_img_codec_type type, char **path)
 
        fd = g_file_open_tmp(template, path, &error);
        if (fd < 0) {
-               mm_util_sec_debug("g_file_open_tmp error [%s]", error->message);
-               g_free(error);
+               mm_util_sec_debug("g_file_open_tmp error [%s]", (error ? error->message : "none"));
+               g_error_free(error);
                return MM_UTIL_ERROR_INVALID_OPERATION;
        }
 
index 06d43fb..43b1d57 100644 (file)
@@ -110,8 +110,7 @@ static void __save_to_file(mm_util_image_h handle, const char *out_path)
                printf("Fail g_file_set_contents [%s: %s]", out_path, (error ? error->message : "none"));
 
        MM_UTIL_SAFE_FREE(buffer);
-       if (error)
-               g_error_free(error);
+       g_error_free(error);
 
        return;
 }
@@ -507,8 +506,7 @@ static int __magick_decenc_buffer_png_test(mm_util_color_format_e format, unsign
 
        if (!g_file_get_contents(src_path, &src_buffer, &src_buffer_size, &error)) {
                printf("Fail g_file_get_contents [%s: %s]\n", src_path, (error ? error->message : "none"));
-               if (error)
-                       g_error_free(error);
+               g_error_free(error);
                return ret;
        }
 
@@ -552,8 +550,7 @@ END:
        mm_util_enc_opt_destroy(enc_option);
        mm_image_destroy_image(decoded_image);
        g_free(buffer);
-       if (error)
-               g_error_free(error);
+       g_error_free(error);
 
        return ret;
 }
@@ -626,8 +623,7 @@ static int __magick_decenc_buffer_webp_test(mm_util_color_format_e format, bool
 
        if (!g_file_get_contents(src_path, &src_buffer, &src_buffer_size, &error)) {
                printf("Fail g_file_get_contents [%s: %s]\n", src_path, (error ? error->message : "none"));
-               if (error)
-                       g_error_free(error);
+               g_error_free(error);
                return ret;
        }
 
@@ -671,8 +667,7 @@ END:
        mm_util_enc_opt_destroy(enc_option);
        mm_image_destroy_image(decoded_image);
        g_free(buffer);
-       if (error)
-               g_error_free(error);
+       g_error_free(error);
 
        return ret;
 }
index 68c9ea4..dba051e 100644 (file)
@@ -1,6 +1,6 @@
 Name:       libmm-utility
 Summary:    Multimedia Framework Utility Library
-Version:    0.4.1
+Version:    0.4.2
 Release:    0
 Group:      System/Libraries
 License:    Apache-2.0
index 8822a2d..84967ca 100644 (file)
@@ -292,8 +292,7 @@ int mm_util_webp_anim_enc_save_to_file(mm_util_webp_anim_enc_h anim_enc_h, const
        if (!g_file_set_contents(path, (gchar *)webp_data.bytes, (gssize)webp_data.size, &g_error))
                mm_util_error("Error! g_file_set_contents(%s)", (g_error ? g_error->message : "none"));
 
-       if (g_error)
-               g_error_free(g_error);
+       g_error_free(g_error);
 END:
 
        WebPDataClear(&webp_data);
index fbf71b6..e6e3663 100644 (file)
@@ -247,8 +247,7 @@ static gboolean __test_encode_to_buffer()
        }
        if (!g_file_set_contents(ENCODE_MEM_PATH, (gchar *)encoded_data, (gssize)encoded_size, &g_error)) {
                fprintf(stderr, "\t[WEBP_testsuite] g_file_set_contents failed : %s\n", ENCODE_MEM_PATH);
-               if (g_error)
-                       g_error_free(g_error);
+               g_error_free(g_error);
                goto END;
        }