Fix SVACE defects 37/68237/2 accepted/tizen/common/20160504.125843 accepted/tizen/ivi/20160504.011136 accepted/tizen/mobile/20160504.011042 accepted/tizen/tv/20160504.011100 accepted/tizen/wearable/20160504.011116 submit/tizen/20160503.074218
authorSeungbae Shin <seungbae.shin@samsung.com>
Tue, 3 May 2016 06:30:27 +0000 (15:30 +0900)
committerSeungbae Shin <seungbae.shin@samsung.com>
Tue, 3 May 2016 06:31:31 +0000 (15:31 +0900)
[Version] 0.3.33
[Profile] Common
[Issues] WGID 61200, 61201, 61304, 61305
[Issue Type] SVACE

Change-Id: Ie9d60101d3ce15f22a4347e9a829ba562381044b

packaging/capi-media-audio-io.spec
src/cpp/cpp_audio_io.cpp

index 617bc49..9bf4e9c 100644 (file)
@@ -1,6 +1,6 @@
 Name:           capi-media-audio-io
 Summary:        An Audio Input & Audio Output library in Tizen Native API
-Version:        0.3.32
+Version:        0.3.33
 Release:        0
 Group:          Multimedia/API
 License:        Apache-2.0
index 8bc1f83..667381d 100644 (file)
@@ -633,6 +633,9 @@ int cpp_audio_in_read(audio_in_h input, void *buffer, unsigned int length) {
         assert(handle->audioIoHandle);
 
         CAudioInput* inputHandle = dynamic_cast<CAudioInput*>(handle->audioIoHandle);
+        if (inputHandle == NULL) {
+            THROW_ERROR_MSG_FORMAT(CAudioError::EError::ERROR_INVALID_HANDLE, "Handle is NULL");
+        }
         size_t readn = inputHandle->read(buffer, static_cast<size_t>(length));
         ret = static_cast<int>(readn);
 #ifdef _AUDIO_IO_DEBUG_TIMING_
@@ -657,6 +660,9 @@ int cpp_audio_in_get_buffer_size(audio_in_h input, int *size) {
         assert(handle->audioIoHandle);
 
         CAudioIO* inputHandle = dynamic_cast<CAudioInput*>(handle->audioIoHandle);
+        if (inputHandle == NULL) {
+            THROW_ERROR_MSG_FORMAT(CAudioError::EError::ERROR_INVALID_HANDLE, "Handle is NULL");
+        }
         *size = inputHandle->getBufferSize();
     } catch (CAudioError e) {
         AUDIO_IO_LOGE("%s", e.getErrorMsg());
@@ -1260,6 +1266,9 @@ int cpp_audio_out_write(audio_out_h output, void *buffer, unsigned int length) {
         assert(handle->audioIoHandle);
 
         CAudioOutput* outputHandle = dynamic_cast<CAudioOutput*>(handle->audioIoHandle);
+        if (outputHandle == NULL) {
+            THROW_ERROR_MSG_FORMAT(CAudioError::EError::ERROR_INVALID_HANDLE, "Handle is NULL");
+        }
         size_t writen = outputHandle->write(buffer, static_cast<size_t>(length));
         ret = static_cast<int>(writen);
 #ifdef _AUDIO_IO_DEBUG_TIMING_
@@ -1284,6 +1293,9 @@ int cpp_audio_out_get_buffer_size(audio_out_h output, int *size) {
         assert(handle->audioIoHandle);
 
         CAudioOutput* outputHandle = dynamic_cast<CAudioOutput*>(handle->audioIoHandle);
+        if (outputHandle == NULL) {
+            THROW_ERROR_MSG_FORMAT(CAudioError::EError::ERROR_INVALID_HANDLE, "Handle is NULL");
+        }
         *size = outputHandle->getBufferSize();
     } catch (CAudioError e) {
         AUDIO_IO_LOGE("%s", e.getErrorMsg());