Deallocate resouces to prevent resource leak 59/212059/2 accepted/tizen/unified/20190822.045404 submit/tizen/20190820.233532
authorjiyong.min <jiyong.min@samsung.com>
Wed, 14 Aug 2019 01:20:30 +0000 (10:20 +0900)
committerjiyong.min <jiyong.min@samsung.com>
Wed, 14 Aug 2019 01:25:09 +0000 (10:25 +0900)
 - Resource leaks were detected by static analyzer

Change-Id: I94dfc503d0d364eb738b4ac1caff5f2a4d89d56f

imgp/mm_util_imgp.c
jpeg/mm_util_jpeg.c

index 655960a..4355e1a 100644 (file)
@@ -813,7 +813,10 @@ int mm_util_crop_image(mm_util_image_h src, unsigned int start_x, unsigned int s
                return MM_UTIL_ERROR_NOT_SUPPORTED_FORMAT;
        }
 
-       ret = mm_image_create_image(_width, _height, _src->color, _buffer, _buffer_size, dst);
+       if (ret == MM_UTIL_ERROR_NONE)
+               ret = mm_image_create_image(_width, _height, _src->color, _buffer, _buffer_size, dst);
+       else
+               mm_util_error("crop is failed (%d)", ret);
 
        MMUTIL_SAFE_FREE(_buffer);
        mm_util_fleave();
index 4d2ead5..e117682 100644 (file)
@@ -516,6 +516,7 @@ int mm_util_jpeg_encode_to_memory(void **buffer, unsigned int *size, unsigned ch
        mm_util_retvm_if(ret != MM_UTIL_ERROR_NONE, ret, "mm_image_create_image fail (%d)", ret);
 
        ret = mm_util_encode_to_jpeg_memory(decoded, quality, buffer, &encoded_size);
+       mm_image_destroy_image(decoded);
        mm_util_retvm_if(ret != MM_UTIL_ERROR_NONE, ret, "mm_util_encode_to_jpeg_memory fail (%d)", ret);
 
        *size = (unsigned int)encoded_size;