From 047330f1c245bcb3641856a6adabfc344d6e3c36 Mon Sep 17 00:00:00 2001 From: Wei Jia Date: Tue, 5 Jan 2016 10:16:24 -0800 Subject: Sonivox: sanity check numSamples. Bug: 26366256 Change-Id: I066888c25035ea4c60c88f316db4508dc4dab6bc --- arm-wt-22k/lib_src/eas_wtengine.c | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) (limited to 'arm-wt-22k/lib_src/eas_wtengine.c') diff --git a/arm-wt-22k/lib_src/eas_wtengine.c b/arm-wt-22k/lib_src/eas_wtengine.c index 224f60d..e7263fd 100644 --- a/arm-wt-22k/lib_src/eas_wtengine.c +++ b/arm-wt-22k/lib_src/eas_wtengine.c @@ -32,6 +32,8 @@ * includes *------------------------------------ */ +#include "log/log.h" + #include "eas_types.h" #include "eas_math.h" #include "eas_audioconst.h" @@ -88,6 +90,10 @@ void WT_VoiceGain (S_WT_VOICE *pWTVoice, S_WT_INT_FRAME *pWTIntFrame) /* initialize some local variables */ numSamples = pWTIntFrame->numSamples; + if (numSamples <= 0) { + ALOGE("b/26366256"); + return; + } pMixBuffer = pWTIntFrame->pMixBuffer; pInputBuffer = pWTIntFrame->pAudioBuffer; @@ -182,6 +188,10 @@ void WT_Interpolate (S_WT_VOICE *pWTVoice, S_WT_INT_FRAME *pWTIntFrame) /* initialize some local variables */ numSamples = pWTIntFrame->numSamples; + if (numSamples <= 0) { + ALOGE("b/26366256"); + return; + } pOutputBuffer = pWTIntFrame->pAudioBuffer; loopEnd = (const EAS_SAMPLE*) pWTVoice->loopEnd + 1; @@ -275,6 +285,10 @@ void WT_InterpolateNoLoop (S_WT_VOICE *pWTVoice, S_WT_INT_FRAME *pWTIntFrame) /* initialize some local variables */ numSamples = pWTIntFrame->numSamples; + if (numSamples <= 0) { + ALOGE("b/26366256"); + return; + } pOutputBuffer = pWTIntFrame->pAudioBuffer; phaseInc = pWTIntFrame->frame.phaseIncrement; @@ -363,6 +377,10 @@ void WT_VoiceFilter (S_FILTER_CONTROL *pFilter, S_WT_INT_FRAME *pWTIntFrame) /* initialize some local variables */ numSamples = pWTIntFrame->numSamples; + if (numSamples <= 0) { + ALOGE("b/26366256"); + return; + } pAudioBuffer = pWTIntFrame->pAudioBuffer; z1 = pFilter->z1; @@ -426,6 +444,10 @@ void WT_VoiceFilter (S_FILTER_CONTROL *pFilter, S_WT_INT_FRAME *pWTIntFrame) /* initialize some local variables */ numSamples = pWTIntFrame->numSamples; + if (numSamples <= 0) { + ALOGE("b/26366256"); + return; + } pOutputBuffer = pWTIntFrame->pAudioBuffer; phaseInc = pWTIntFrame->frame.phaseIncrement; @@ -569,6 +591,10 @@ void WT_InterpolateMono (S_WT_VOICE *pWTVoice, S_WT_INT_FRAME *pWTIntFrame) EAS_I8 *pLoopStart; numSamples = pWTIntFrame->numSamples; + if (numSamples <= 0) { + ALOGE("b/26366256"); + return; + } pMixBuffer = pWTIntFrame->pMixBuffer; /* calculate gain increment */ -- cgit v1.2.3 From 8e618348f91aaedc59d1d14c14d1f3eaf1e4c103 Mon Sep 17 00:00:00 2001 From: Wei Jia Date: Tue, 12 Jan 2016 10:37:30 -0800 Subject: Sonivox: add SafetyNet log. Bug: 26366256 Change-Id: Ief72e01b7cc6d87a015105af847a99d3d9b03cb0 --- arm-wt-22k/lib_src/eas_wtengine.c | 7 +++++++ 1 file changed, 7 insertions(+) (limited to 'arm-wt-22k/lib_src/eas_wtengine.c') diff --git a/arm-wt-22k/lib_src/eas_wtengine.c b/arm-wt-22k/lib_src/eas_wtengine.c index e7263fd..854d4b4 100644 --- a/arm-wt-22k/lib_src/eas_wtengine.c +++ b/arm-wt-22k/lib_src/eas_wtengine.c @@ -33,6 +33,7 @@ *------------------------------------ */ #include "log/log.h" +#include #include "eas_types.h" #include "eas_math.h" @@ -92,6 +93,7 @@ void WT_VoiceGain (S_WT_VOICE *pWTVoice, S_WT_INT_FRAME *pWTIntFrame) numSamples = pWTIntFrame->numSamples; if (numSamples <= 0) { ALOGE("b/26366256"); + android_errorWriteLog(0x534e4554, "26366256"); return; } pMixBuffer = pWTIntFrame->pMixBuffer; @@ -190,6 +192,7 @@ void WT_Interpolate (S_WT_VOICE *pWTVoice, S_WT_INT_FRAME *pWTIntFrame) numSamples = pWTIntFrame->numSamples; if (numSamples <= 0) { ALOGE("b/26366256"); + android_errorWriteLog(0x534e4554, "26366256"); return; } pOutputBuffer = pWTIntFrame->pAudioBuffer; @@ -287,6 +290,7 @@ void WT_InterpolateNoLoop (S_WT_VOICE *pWTVoice, S_WT_INT_FRAME *pWTIntFrame) numSamples = pWTIntFrame->numSamples; if (numSamples <= 0) { ALOGE("b/26366256"); + android_errorWriteLog(0x534e4554, "26366256"); return; } pOutputBuffer = pWTIntFrame->pAudioBuffer; @@ -379,6 +383,7 @@ void WT_VoiceFilter (S_FILTER_CONTROL *pFilter, S_WT_INT_FRAME *pWTIntFrame) numSamples = pWTIntFrame->numSamples; if (numSamples <= 0) { ALOGE("b/26366256"); + android_errorWriteLog(0x534e4554, "26366256"); return; } pAudioBuffer = pWTIntFrame->pAudioBuffer; @@ -446,6 +451,7 @@ void WT_VoiceFilter (S_FILTER_CONTROL *pFilter, S_WT_INT_FRAME *pWTIntFrame) numSamples = pWTIntFrame->numSamples; if (numSamples <= 0) { ALOGE("b/26366256"); + android_errorWriteLog(0x534e4554, "26366256"); return; } pOutputBuffer = pWTIntFrame->pAudioBuffer; @@ -593,6 +599,7 @@ void WT_InterpolateMono (S_WT_VOICE *pWTVoice, S_WT_INT_FRAME *pWTIntFrame) numSamples = pWTIntFrame->numSamples; if (numSamples <= 0) { ALOGE("b/26366256"); + android_errorWriteLog(0x534e4554, "26366256"); return; } pMixBuffer = pWTIntFrame->pMixBuffer; -- cgit v1.2.3