_SceneManagerImpl::~_SceneManagerImpl(void)
{
+ bool memoryError = false;
+
std::unique_ptr<IMapEnumeratorT<String, _SceneDescription*> > pMapEnum(__sceneMap.GetMapEnumeratorN());
if (pMapEnum)
{
}
else
{
- SysLogException(NID_UI_SCENES, E_OUT_OF_MEMORY, "[%s] Memory allocation failed.", GetErrorMessage(E_OUT_OF_MEMORY));
+ memoryError = true;
}
std::unique_ptr<IMapEnumeratorT<String, SceneTransition*> > pTransitionMapEnum(__transitionMap.GetMapEnumeratorN());
}
else
{
+ memoryError = true;
+ }
+
+ std::unique_ptr<IMapEnumeratorT<SceneId, Scene*> > pSceneContainerEnum(__sceneContainer.GetMapEnumeratorN());
+ if (pSceneContainerEnum)
+ {
+ while (pSceneContainerEnum->MoveNext() == E_SUCCESS)
+ {
+ Scene* pValue = null;
+ pSceneContainerEnum->GetValue(pValue);
+ delete pValue;
+ }
+ }
+ else
+ {
+ memoryError = true;
+ }
+
+ if (memoryError)
+ {
SysLogException(NID_UI_SCENES, E_OUT_OF_MEMORY, "[%s] Memory allocation failed.", GetErrorMessage(E_OUT_OF_MEMORY));
}
}