Fix N_SE-16408 : progressbar is still showing when app is dead.
authorhhh.kwon <hhh.kwon@samsung.com>
Thu, 6 Dec 2012 07:45:58 +0000 (16:45 +0900)
committerhhh.kwon <hhh.kwon@samsung.com>
Thu, 6 Dec 2012 07:47:02 +0000 (16:47 +0900)
Change-Id: Ia2223b62c9987ab55f6e8375731629cd782dbc8b

src/_genlist.c
src/_progressbar.c

index 1316de5452a483e4b145cf4f450723f41b4e203a..8a7277e400ff75dd40045cc03ff703e5da1d87d8 100755 (executable)
@@ -790,6 +790,7 @@ _D("func\n");
        Eina_List *l, *l_next;
        struct _task_info *info;
        Elm_Object_Item *egi;
+       Eina_Bool dead = EINA_FALSE;
 
        retvm_if(ad == NULL, -1, "Invalid argument: appdata is NULL\n");
 
@@ -802,6 +803,7 @@ _D("func\n");
                        if (info->pid > 0) {
                                if (aul_terminate_pid(info->pid) < 0) {
                                        kill(info->pid, SIGKILL);
+                                       dead = EINA_TRUE;
                                }
                        }
                        break;
@@ -809,6 +811,11 @@ _D("func\n");
        }
        ad->ending = EINA_FALSE;
 
+       if(!dead){
+               _D("matched applist is nothing\n");
+               _del_progressbar(ad);
+       }
+
        return 0;
 }
 
index ea50b6bfd07d3fd707367551b496d4aede155062..7a4d2fa0f38e5a2af2df67e636b74264440be95f 100755 (executable)
@@ -23,6 +23,7 @@
 
 void _del_progressbar(void *data)
 {
+       _D("%s\n", __func__);
        struct appdata *ad = (struct appdata *)data;
        retm_if(ad == NULL, "Invalid argument: appdata is NULL\n");
 
@@ -35,6 +36,7 @@ void _del_progressbar(void *data)
 
 void _show_progressbar(void *data)
 {
+       _D("%s\n", __func__);
        struct appdata *ad = (struct appdata *)data;
        retm_if(ad == NULL, "Invalid argument: appdata is NULL\n");