audio policy: fix issues in effect parameters parsing
Fix several issues in AudioPolicyEffects.cpp
- Fix old bug in growParamSize() that should take a pointer
to the address of the parameter structure because it can
modify it by calling realloc()
- Fix warnings reported by clang static analyzer
- Add checks on memory allocations
Bug: 26938281
Change-Id: Id0bfa64371d95356d9fc308c6ea9c74e10ab1be0
diff --git a/services/audiopolicy/service/AudioPolicyEffects.h b/services/audiopolicy/service/AudioPolicyEffects.h
index 58ea24c..f302167 100644
--- a/services/audiopolicy/service/AudioPolicyEffects.h
+++ b/services/audiopolicy/service/AudioPolicyEffects.h
@@ -171,10 +171,10 @@
void loadEffectParameters(cnode *root, Vector <effect_param_t *>& params);
effect_param_t *loadEffectParameter(cnode *root);
size_t readParamValue(cnode *node,
- char *param,
+ char **param,
size_t *curSize,
size_t *totSize);
- size_t growParamSize(char *param,
+ size_t growParamSize(char **param,
size_t size,
size_t *curSize,
size_t *totSize);