Update exception handling logic in _Control class
authorjaewon7.cho <jaewon7.cho@samsung.com>
Wed, 20 Mar 2013 11:10:24 +0000 (20:10 +0900)
committerjaewon7.cho <jaewon7.cho@samsung.com>
Wed, 20 Mar 2013 11:18:50 +0000 (20:18 +0900)
Change-Id: I60b9ffc0243ba6952b869af323b04e04744e9ea5
Signed-off-by: jaewon7.cho <jaewon7.cho@samsung.com>
src/ui/FUi_Control.cpp

index b803f56..347fb65 100755 (executable)
@@ -1292,10 +1292,7 @@ _Control::SetLayer(_ControlLayer layer)
        result r = pImpl->SetZOrderGroup(::GetZOrderGroupOfVisualElement(layer));
        __layer = layer;
 
-       SysAssert(r == E_SUCCESS);
-       ClearLastResult(); // [Temp] Will be removed.
-
-       SysAssert(r == E_SUCCESS);
+       ClearLastResult(); 
 }
 
 const _Control::ControlList&
@@ -1577,7 +1574,7 @@ _Control::EndAttaching(_Control& child)
        {
                r = child.UpdateBoundsOfVisualElement(floatBounds);
        }
-       SysAssert(r == E_SUCCESS); // [ToDo] Exception check and rollback.
+       SysTryReturn(NID_UI, r == E_SUCCESS, r, r, "[%s] Propagating.", GetErrorMessage(r));
 
        r = child.GetControlDelegate().OnAttached();
        SysTryReturn(NID_UI, r == E_SUCCESS, r, r, "[%s] Propagating.", GetErrorMessage(r));
@@ -1613,7 +1610,7 @@ _Control::AttachChild(_Control& child)
 
        ControlList& children = GetChildList();
        r = children.Add(&child);
-       SysAssert(r == E_SUCCESS); // [ToDo] Exception check and rollback.
+       SysTryReturn(NID_UI, r == E_SUCCESS, r, r, "[%s] Propagating.", GetErrorMessage(r));
 
        r = GetVisualElement()->AttachChild(*child.GetVisualElement());
 
@@ -3867,7 +3864,6 @@ _Control::AttachOwnee(_Window& window)
        r = __pOwnees->Add(&window);
        if (IsFailed(r))
        {
-               SysAssert(r == E_OUT_OF_MEMORY);
                SysLogException(NID_UI, E_OUT_OF_MEMORY, "[E_OUT_OF_MEMORY] Memory shortage.");
                return E_OUT_OF_MEMORY;
        }
@@ -3893,7 +3889,6 @@ _Control::GetOwnee(int index) const
        r = __pOwnees->GetAt(index, pOwnee);
        if (IsFailed(r))
        {
-               SysAssert(r == E_OUT_OF_RANGE);
                SysLogException(NID_UI, E_OUT_OF_RANGE, "[E_OUT_OF_RANGE] The specified index is out of range.");
                return null;
        }
@@ -3915,7 +3910,10 @@ _Control::DetachOwnee(_Window& ownee)
        }
 
        r = __pOwnees->Remove(&ownee);
-       SysAssert(r == E_SUCCESS);
+       if (IsFailed(r))
+       {
+               SysLogException(NID_UI, E_OUT_OF_RANGE, "[E_OUT_OF_RANGE] The specified index is out of range.");
+       }
 }
 
 void
@@ -3927,8 +3925,6 @@ _Control::DetachAllOwnees(void)
        while (owneeCount--)
        {
                _Window* pOwnee = GetOwnee(0);
-
-               SysAssert(pOwnee);
                if (pOwnee == null)
                {
                        continue;