修正了一个内存泄露的问题

    技术2022-05-19  19

    void GTPIcon::LoadIconInfo( ){ StructIconInfo* picon=GTPIcon::FindPIconOrigion(m_IconCode); if(picon!=NULL) {  LoadSubsFromXml(picon->XmlData);  m_pIconInfo=picon;  m_Remark=m_pIconInfo->IconName; } else {  CPIconDB::OpenDB();  int count=0;  CString strCondition;  strCondition.Format(_T("IconID=%d"),m_IconCode);

      StructIconInfo* pIconInfo=new StructIconInfo();  pIconInfo->IconCode=m_IconCode;

      struct StructIcon** listicon=CPIconDB::OpenRstIcon(strCondition,count);  if(count!=1)return;  pIconInfo->Angle=listicon[0]->Angle;  pIconInfo->IconName=listicon[0]->IconName;  pIconInfo->Mirror=listicon[0]->Mirror;  pIconInfo->NavigateType=listicon[0]->NavigateType;  delete listicon[0];  delete[] listicon;

      strCondition.Format(_T("IconCode=%d"),m_IconCode);  struct StructIconDetailForEdit** listRecord=CPIconDB::OpenRstIconDetailForEdit(strCondition,count);  if(count>0)  {   LoadSubsFromXml(listRecord[0]->XmlData);   pIconInfo->XmlData=listRecord[0]->XmlData;   delete listRecord[0];   delete[] listRecord;  }    m_pIconInfo=pIconInfo;  m_ListPIcon.push_back(pIconInfo);  m_Remark=m_pIconInfo->IconName; }}


    最新回复(0)