diff --git a/services/audioflinger/Effects.cpp b/services/audioflinger/Effects.cpp index ee7a6d614b..641f3ecb92 100644 --- a/services/audioflinger/Effects.cpp +++ b/services/audioflinger/Effects.cpp @@ -1856,12 +1856,13 @@ status_t AudioFlinger::EffectHandle::command(uint32_t cmdCode, } // copy to local memory in case of client corruption b/32220769 - param = (effect_param_t *)realloc(param, size); - if (param == NULL) { + auto *newParam = (effect_param_t *)realloc(param, size); + if (newParam == NULL) { ALOGW("command(): out of memory"); status = NO_MEMORY; break; } + param = newParam; memcpy(param, p, size); int reply = 0;