hwc: mdpcomp: Free pipeinfo objects every drawing round
Free pipeinfo objects every round on reset, irrespective of the
number of layers to avoid any possible leaks.
Change-Id: Ia47c968f6ee64cbb56be72336305bf11a45c2ee5
diff --git a/libhwcomposer/hwc_mdpcomp.cpp b/libhwcomposer/hwc_mdpcomp.cpp
index 6084d8d..9073fa0 100644
--- a/libhwcomposer/hwc_mdpcomp.cpp
+++ b/libhwcomposer/hwc_mdpcomp.cpp
@@ -238,11 +238,12 @@
}
MDPComp::FrameInfo::FrameInfo() {
+ memset(&mdpToLayer, 0, sizeof(mdpToLayer));
reset(0);
}
void MDPComp::FrameInfo::reset(const int& numLayers) {
- for(int i = 0 ; i < MAX_PIPES_PER_MIXER && numLayers; i++ ) {
+ for(int i = 0; i < MAX_PIPES_PER_MIXER; i++) {
if(mdpToLayer[i].pipeInfo) {
delete mdpToLayer[i].pipeInfo;
mdpToLayer[i].pipeInfo = NULL;