Modify for prevent 49039, 49126
authorwonyoung12.lee <wonyoung12.lee@samsung.com>
Tue, 9 Apr 2013 01:23:54 +0000 (10:23 +0900)
committerwonyoung12.lee <wonyoung12.lee@samsung.com>
Tue, 9 Apr 2013 01:23:54 +0000 (10:23 +0900)
Change-Id: Ic8c8d7eaafcc1806c8a5708b971ef65fe62a2acd
Signed-off-by: wonyoung12.lee <wonyoung12.lee@samsung.com>
src/ui/controls/FUiCtrl_IconListItem.cpp [changed mode: 0755->0644]
src/ui/controls/FUiCtrl_IconListItemDrawingProperty.cpp

old mode 100755 (executable)
new mode 100644 (file)
index 79123dd..e3f96b9
@@ -67,8 +67,6 @@ _IconListItem::_IconListItem(_VisualElement* pBase)
 
 _IconListItem::~_IconListItem(void)
 {
-       __pBase->RemoveAllAnimations();
-
        delete __pBitmap[ICON_LIST_VIEW_ITEM_DRAWING_STATUS_NORMAL];
        __pBitmap[ICON_LIST_VIEW_ITEM_DRAWING_STATUS_NORMAL] = null;
 
@@ -83,72 +81,53 @@ _IconListItem::~_IconListItem(void)
        delete __pTextObject;
        __pTextObject = null;
 
-       for (int i = 0, n = __overlayBitmaps.size() ; i < n ; i++)
+       if (__pBase != null)
        {
-               _OverlayBitmap* pOverlayBitmap = __overlayBitmaps.at(i);
-               delete pOverlayBitmap->pBitmap;
-               pOverlayBitmap->pBitmap = null;
+               __pBase->RemoveAllAnimations();
 
-               if (pOverlayBitmap->pVE != null)
+               for (int i = 0, n = __overlayBitmaps.size() ; i < n ; i++)
                {
-                       if (__pBase != null)
+                       _OverlayBitmap* pOverlayBitmap = __overlayBitmaps.at(i);
+                       delete pOverlayBitmap->pBitmap;
+                       pOverlayBitmap->pBitmap = null;
+
+                       if (pOverlayBitmap->pVE != null)
                        {
                                __pBase->DetachChild(*(pOverlayBitmap->pVE));
+                               pOverlayBitmap->pVE->Destroy();
+                               pOverlayBitmap->pVE = null;
                        }
-
-                       pOverlayBitmap->pVE->Destroy();
-                       pOverlayBitmap->pVE = null;
+                       delete pOverlayBitmap;
                }
 
-               delete pOverlayBitmap;
-       }
-
-       if (__pTextVE != null)
-       {
-               if (__pBase != null)
+               if (__pTextVE != null)
                {
                        __pBase->DetachChild(*__pTextVE);
+                       __pTextVE->Destroy();
+                       __pTextVE = null;
                }
 
-               __pTextVE->Destroy();
-               __pTextVE = null;
-       }
-
-       if (__pCheckVE != null)
-       {
-               if (__pBase != null)
+               if (__pCheckVE != null)
                {
                        __pBase->DetachChild(*__pCheckVE);
+                       __pCheckVE->Destroy();
+                       __pCheckVE = null;
                }
 
-               __pCheckVE->Destroy();
-               __pCheckVE = null;
-       }
-
-       if (__pCheckBgVE != null)
-       {
-               if (__pBase != null)
+               if (__pCheckBgVE != null)
                {
                        __pBase->DetachChild(*__pCheckBgVE);
+                       __pCheckBgVE->Destroy();
+                       __pCheckBgVE = null;
                }
 
-               __pCheckBgVE->Destroy();
-               __pCheckBgVE = null;
-       }
-
-       if (__pTouchAniVE!= null)
-       {
-               if (__pBase != null)
+               if (__pTouchAniVE!= null)
                {
                        __pBase->DetachChild(*__pTouchAniVE);
+                       __pTouchAniVE->Destroy();
+                       __pTouchAniVE = null;
                }
 
-               __pTouchAniVE->Destroy();
-               __pTouchAniVE = null;
-       }
-
-       if (__pBase != null)
-       {
                VisualElement* pParent = __pBase->GetParent();
                if (pParent != null)
                {
index 0c19fe1..d53ecbe 100644 (file)
@@ -720,6 +720,7 @@ _IconListItemDrawingProperty::Release(void)
        if (__refCount <= 0)
        {
                delete this;
+               return 0;
        }
 
        return __refCount;