Set pointer var to null after deleting evas object 10/107910/1
authorKyungwook Tak <k.tak@samsung.com>
Mon, 2 Jan 2017 00:46:10 +0000 (09:46 +0900)
committerKyungwook Tak <k.tak@samsung.com>
Mon, 2 Jan 2017 00:46:33 +0000 (09:46 +0900)
Change-Id: I747971a75d966eed808ae851878e0025aaa92716
Signed-off-by: Kyungwook Tak <k.tak@samsung.com>
src/common/ui/popup-bin/popup.cpp

index 0cd22e8a02ff8e2bca8eb1002dbc7f26e3ae03b3..4b8ae15d0201979ba363c1e01b0213bc2a41fccf 100644 (file)
@@ -103,7 +103,10 @@ void answerAllowCb(void *data, Evas_Object * /* obj */, void * /* event_info */)
        TpkpPopup *pdp = static_cast<TpkpPopup *>(data);
        pdp->result = Response::ALLOW;
 
-       evas_object_del(pdp->win);
+       if (pdp->win) {
+               evas_object_del(pdp->win);
+               pdp->win = nullptr;
+       }
 }
 
 void answerDenyCb(void *data, Evas_Object * /* obj */, void * /* event_info */)
@@ -116,7 +119,10 @@ void answerDenyCb(void *data, Evas_Object * /* obj */, void * /* event_info */)
        TpkpPopup *pdp = static_cast<TpkpPopup *>(data);
        pdp->result = Response::DENY;
 
-       evas_object_del(pdp->win);
+       if (pdp->win) {
+               evas_object_del(pdp->win);
+               pdp->win = nullptr;
+       }
 }
 
 Eina_Bool timeoutCb(void *data)
@@ -128,7 +134,10 @@ Eina_Bool timeoutCb(void *data)
 
        SLOGI("popup timeout[%d](ms) reached! Let's deny", pdp->timeout);
 
-       evas_object_del(pdp->win);
+       if (pdp->win) {
+               evas_object_del(pdp->win);
+               pdp->win = nullptr;
+       }
 
        return ECORE_CALLBACK_CANCEL;
 }