Add to check the parameter for api 15/191615/2
authorjiyong.min <jiyong.min@samsung.com>
Fri, 19 Oct 2018 04:46:26 +0000 (13:46 +0900)
committerhj kim <backto.kim@samsung.com>
Fri, 19 Oct 2018 05:05:29 +0000 (05:05 +0000)
Change-Id: Ib77dfd338385dc3892ffdcaaa1864ce0368ba14f

src/image_util_encode.c

index 1356973..98cb644 100755 (executable)
@@ -123,6 +123,9 @@ int image_util_encode_set_resolution(image_util_encode_h handle, unsigned long w
                        err = __allocate_source_buffer(_handle);
                        image_util_retvm_if(err != IMAGE_UTIL_ERROR_NONE, err, "__allocate_source_buffer is failed");
                }
+               if (_handle->gif_encode_info.current_resolution_count != 0) {
+                       image_util_retvm_if((width > _handle->gif_encode_info.sources[0]->width || height > _handle->gif_encode_info.sources[0]->height), IMAGE_UTIL_ERROR_INVALID_PARAMETER, "Invalid resolution");
+               }
                _handle->gif_encode_info.sources[_handle->gif_encode_info.current_resolution_count]->width = width;
                _handle->gif_encode_info.sources[_handle->gif_encode_info.current_resolution_count]->height = height;
                _handle->gif_encode_info.current_resolution_count++;
@@ -370,6 +373,8 @@ int image_util_encode_run_async(image_util_encode_h handle, image_util_encode_co
        encode_s *_handle = (encode_s *) handle;
 
        image_util_retvm_if(_handle == NULL, IMAGE_UTIL_ERROR_INVALID_PARAMETER, "Invalid Handle");
+       image_util_retvm_if((_handle->image_type != IMAGE_UTIL_GIF && __is_invalid_image_info(_handle->src)), IMAGE_UTIL_ERROR_INVALID_PARAMETER, "Invalid input");
+       image_util_retvm_if((_handle->image_type == IMAGE_UTIL_GIF && (_handle->gif_encode_info.sources == NULL || __is_invalid_image_info(*_handle->gif_encode_info.sources[0]))), IMAGE_UTIL_ERROR_INVALID_PARAMETER, "Invalid input");
        image_util_retvm_if((completed_cb == NULL), IMAGE_UTIL_ERROR_INVALID_PARAMETER, "Invalid callback");
        image_util_retvm_if((_handle->thread != NULL), IMAGE_UTIL_ERROR_INVALID_OPERATION, "The thread is alread running");