after having been compared to NULL value at ise-stt-mode.cpp:216, pointer 'vd' is dereferenced at ise-stt-mode.cpp:232.
Return value of a function 'operator new' is dereferenced at ise-stt-mode.cpp:225 without checking, but it is usually checked for this function (12/14).
Change-Id: I58c3d768c1ceb74160bc0b29e9f1b65366c59f09
Signed-off-by: Jihoon Kim <jihoon48.kim@samsung.com>
{
LOGD("_app_stt_initialize ");
VoiceData *vd = (VoiceData *)voice_data;
+ if (!vd) return false;
try {
- if (vd != NULL && vd->sttmanager) {
+ if (vd->sttmanager) {
vd->sttmanager->Cancel();
delete vd->sttmanager;
vd->sttmanager = NULL;
}
- if (vd != NULL && vd->sttfeedback) {
+ if (vd->sttfeedback) {
delete vd->sttfeedback;
vd->sttfeedback = NULL;
}
vd->sttfeedback = new is::stt::SttFeedback();
- vd->sttfeedback->SetVoiceData(vd);
+ if (vd->sttfeedback)
+ vd->sttfeedback->SetVoiceData(vd);
vd->sttmanager = new is::stt::SttManager(*(vd->sttfeedback));
- vd->sttmanager->Prepare();
+ if (vd->sttmanager)
+ vd->sttmanager->Prepare();
} catch(std::exception &e) {
LOGD("%s", e.what());
return false;