osaf/libs/agents/saf/imma/imma_db.c | 5 ++++- osaf/libs/agents/saf/imma/imma_om_api.c | 3 ++- 2 files changed, 6 insertions(+), 2 deletions(-)
The patch provides the fix for fixing memory leak when search handles are closed before saImmOmSearchNext function reach the last object in the search result. diff --git a/osaf/libs/agents/saf/imma/imma_db.c b/osaf/libs/agents/saf/imma/imma_db.c --- a/osaf/libs/agents/saf/imma/imma_db.c +++ b/osaf/libs/agents/saf/imma/imma_db.c @@ -1188,11 +1188,14 @@ uint32_t imma_search_node_delete(IMMA_CB for(i=0; i<search_node->searchBundle->resultSize; i++) { free(search_node->searchBundle->searchResult[i]->objectName.buf); immsv_free_attrvalues_list(search_node->searchBundle->searchResult[i]->attrValuesList); + free(search_node->searchBundle->searchResult[i]); } free(search_node->searchBundle->searchResult); free(search_node->searchBundle); search_node->searchBundle = NULL; - } else if (!search_node->mSearchId && search_node->mLastAttributes) { + } + + if (search_node->mLastAttributes) { imma_freeSearchAttrs(search_node->mLastAttributes); search_node->mLastAttributes = NULL; } diff --git a/osaf/libs/agents/saf/imma/imma_om_api.c b/osaf/libs/agents/saf/imma/imma_om_api.c --- a/osaf/libs/agents/saf/imma/imma_om_api.c +++ b/osaf/libs/agents/saf/imma/imma_om_api.c @@ -6903,7 +6903,7 @@ SaAisErrorT saImmOmSearchFinalize(SaImmS if (search_node->mLastAttributes) { TRACE("Freeing last result"); imma_freeSearchAttrs((SaImmAttrValuesT_2 **)search_node->mLastAttributes); - search_node->mLastAttributes = 0; + search_node->mLastAttributes = NULL; } if (search_node->searchBundle) { @@ -6912,6 +6912,7 @@ SaAisErrorT saImmOmSearchFinalize(SaImmS for(i=0; i<search_node->searchBundle->resultSize; i++) { free(search_node->searchBundle->searchResult[i]->objectName.buf); immsv_free_attrvalues_list(search_node->searchBundle->searchResult[i]->attrValuesList); + free(search_node->searchBundle->searchResult[i]); } free(search_node->searchBundle->searchResult); free(search_node->searchBundle); ------------------------------------------------------------------------------ "Accelerate Dev Cycles with Automated Cross-Browser Testing - For FREE Instantly run your Selenium tests across 300+ browser/OS combos. Get unparalleled scalability from the best Selenium testing platform available Simple to use. Nothing to install. Get started now for free." http://p.sf.net/sfu/SauceLabs _______________________________________________ Opensaf-devel mailing list Opensaf-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/opensaf-devel