Fix SVACE defects 91/114391/2 accepted/tizen/3.0/common/20170214.180616 accepted/tizen/3.0/ivi/20170214.042620 accepted/tizen/3.0/mobile/20170214.042534 accepted/tizen/3.0/tv/20170214.042547 accepted/tizen/3.0/wearable/20170214.042603 submit/tizen_3.0/20170213.103000
authorSeungbae Shin <seungbae.shin@samsung.com>
Mon, 13 Feb 2017 07:56:08 +0000 (16:56 +0900)
committerSeungbae Shin <seungbae.shin@samsung.com>
Mon, 13 Feb 2017 09:54:51 +0000 (18:54 +0900)
[Version] 0.3.67
[Profile] Common
[Issue Type] Security

Change-Id: Ieaf38e106ca40196571cdfca35ccecad2b146dab

include/CAudioIO.h
packaging/capi-media-audio-io.spec
src/cpp/CAudioIO.cpp
src/cpp/CAudioOutput.cpp

index 43e0e29..0f9557e 100644 (file)
@@ -116,7 +116,6 @@ namespace tizen_media_audio {
 
         bool isForceIgnore();
 
-        CAudioInfo::EAudioDirection mDirection;
         CAudioSessionHandler* mpAudioSessionHandler;
         CPulseAudioClient*    mpPulseAudioClient;
         CAudioInfo            mAudioInfo;
@@ -125,6 +124,7 @@ namespace tizen_media_audio {
         SStateChangedCallback mStateChangedCallback;
         SInterruptCallback    mInterruptCallback;
 
+        CAudioInfo::EAudioDirection mDirection;
         CAudioInfo::EAudioIOState mState;
         CAudioInfo::EAudioIOState mStatePrev;
         bool                  mByPolicy;
index 9f5316a..4525359 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.66
+Version:        0.3.67
 Release:        0
 Group:          Multimedia/API
 License:        Apache-2.0
index 4991b80..4b16771 100644 (file)
@@ -34,6 +34,7 @@ CAudioIO::CAudioIO() :
     __mCond(PTHREAD_COND_INITIALIZER),
     __mIsInit(false),
     __mForceIgnore(false) {
+    mDirection = CAudioInfo::EAudioDirection::AUDIO_DIRECTION_MAX;
     mState = CAudioInfo::EAudioIOState::AUDIO_IO_STATE_NONE;
     mStatePrev = CAudioInfo::EAudioIOState::AUDIO_IO_STATE_NONE;
     mByPolicy = false;
@@ -47,6 +48,7 @@ CAudioIO::CAudioIO(CAudioInfo& audioInfo) :
     __mIsInit(false),
     __mForceIgnore(false) {
     mAudioInfo = audioInfo;
+    mDirection = CAudioInfo::EAudioDirection::AUDIO_DIRECTION_MAX;
     mState = CAudioInfo::EAudioIOState::AUDIO_IO_STATE_NONE;
     mStatePrev = CAudioInfo::EAudioIOState::AUDIO_IO_STATE_NONE;
     mByPolicy = false;
index 75fbed4..2e5db0e 100644 (file)
@@ -345,7 +345,7 @@ size_t CAudioOutput::write(const void* buffer, size_t length) throw(CAudioError)
     }
 
     /* When write() is called in PulseAudio callback, bypass a pcm data to CPulseAudioClient (For Asynchronous) */
-    if (mpPulseAudioClient->isInThread() == true) {
+    if (mpPulseAudioClient && mpPulseAudioClient->isInThread() == true) {
         int ret = mpPulseAudioClient->write(buffer, length);
         if (ret < 0) {
             THROW_ERROR_MSG_FORMAT(CAudioError::EError::ERROR_INTERNAL_OPERATION,