PackageAppInfo* pPackageAppInfo = dynamic_cast <PackageAppInfo*>(__pPackageAppInfoList->GetAt(i));
if (pPackageAppInfo)
{
- PackageAppInfo* pInfo = new (std::nothrow) PackageAppInfo;
+ std::unique_ptr< PackageAppInfo > pInfo(new (std::nothrow) PackageAppInfo);
SysTryReturn(NID_APP, pInfo, null, E_OUT_OF_MEMORY, "[E_OUT_OF_MEMORY] Insufficient memory");
- _PackageAppInfoImpl* pPackageAppInfoImpl = _PackageAppInfoImpl::GetInstance(pInfo);
+ _PackageAppInfoImpl* pPackageAppInfoImpl = _PackageAppInfoImpl::GetInstance(pInfo.get());
SysTryReturn(NID_APP, pPackageAppInfoImpl, null, E_SYSTEM, "pPackageAppInfoImpl is null.");
AppId appId = pPackageAppInfo->GetAppId();
pPackageAppInfoImpl->SetMenuIconVisible(menuIconVisible);
pPackageAppInfoImpl->SetMainApp(mainApp);
- r = pList->Add(*pInfo);
+ r = pList->Add(*pInfo.release());
}
}
}
continue;
}
- PackageAppInfo* pInfo = new (std::nothrow) PackageAppInfo;
+ _PackageAppInfoImpl* pPackageAppInfoImpl = _PackageAppInfoImpl::GetInstance(pPackageAppInfo);
+ SysTryReturn(NID_APP, pPackageAppInfoImpl, null, E_SYSTEM, "pPackageAppInfoImpl is null.");
+
+ std::unique_ptr< PackageAppInfo > pInfo(new (std::nothrow) PackageAppInfo);
SysTryReturn(NID_APP, pInfo, null, E_OUT_OF_MEMORY, "[E_OUT_OF_MEMORY] Insufficient memory");
- _PackageAppInfoImpl* pPackageAppInfoImpl = _PackageAppInfoImpl::GetInstance(pInfo);
- SysTryReturn(NID_APP, pPackageAppInfoImpl, null, E_SYSTEM, "pPackageAppInfoImpl is null.");
+ _PackageAppInfoImpl* pImpl = _PackageAppInfoImpl::GetInstance(pInfo.get());
+ SysTryReturn(NID_APP, pImpl, null, E_SYSTEM, "pImpl is null.");
String appName = pPackageAppInfo->GetAppName();
String appDisplayName = pPackageAppInfo->GetAppDisplayName();
bool menuIconVisible = pPackageAppInfo->IsMenuIconVisible();
bool mainApp = pPackageAppInfo->IsMainApp();
+ String tempIconPath = pPackageAppInfoImpl->GetAppTempIconPath();
- pPackageAppInfoImpl->SetAppId(appId);
- pPackageAppInfoImpl->SetAppName(appName);
- pPackageAppInfoImpl->SetAppDisplayName(appDisplayName);
- pPackageAppInfoImpl->SetMenuIconVisible(menuIconVisible);
- pPackageAppInfoImpl->SetMainApp(mainApp);
+ pImpl->SetAppId(appId);
+ pImpl->SetAppName(appName);
+ pImpl->SetAppDisplayName(appDisplayName);
+ pImpl->SetMenuIconVisible(menuIconVisible);
+ pImpl->SetMainApp(mainApp);
+ pImpl->SetAppTempIconPath(tempIconPath);
- return pInfo;
+ return pInfo.release();
}
}
}