AddressBook问题,调用IADDRBOOK_EnumRecInit,内存泄漏
大家好,我在Brew程序中通过创建实例,初始化,释放的顺序,访问地址簿。
if (ISHELL_CreateInstance(pAT->pIShell, AEECLSID_ADDRBOOK, (void**)&pAT->pIContatAddrBook) != SUCCESS)
{
return FALSE;
}
if(IADDRBOOK_EnumRecInit(pAT->pIContatAddrBook, AEE_ADDR_CAT_NONE, AEE_ADDRFIELD_NONE, NULL, 0) != AEE_SUCCESS)
{
return FALSE;
}
IADDRBOOK_Release(pAT->pIContatAddrBook);
pAT->pIContatAddrBook = NULL;
然后在Brew应用退出后,ISHELL_CloseApplet(pMe->pIShell, FALSE);
发生了内存泄漏。
BPOINT Type 1, Node 0x06A4223C addressb *OEMOS.c 738 3 1 0 9072
12/01/09 14:47:04.547441 ------ App Heap Info ------ *AEEHeap.c 1265 3 1 0 9073
12/01/09 14:47:04.547716 480 - addressbook (L) *AEEHeap.c
这个480就是泄漏的内存大小,然后我地址簿中有120条记录
每条估计占4字节 ,120 × 4 =480
大家可以真机调试下,有什么解决方案吗?是Brew SDK的BUG吗?
谢谢大家,还望解答。。。。