Change function call order 10/250610/1
authorHwankyu Jhun <h.jhun@samsung.com>
Wed, 30 Dec 2020 07:26:31 +0000 (16:26 +0900)
committerHwankyu Jhun <h.jhun@samsung.com>
Wed, 30 Dec 2020 07:26:31 +0000 (16:26 +0900)
Before calling OnResume() & OnPause() callback functions,
aul_status_update() is called. This is to reduce timing issues related
to aul_app_get_status() function.

Change-Id: If7af314c251840b837ff7506511febdc9f03e1c4
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
src/ui_base/appcore_ui_base.c

index a11a14c..5dbabc8 100644 (file)
@@ -303,7 +303,9 @@ static void __do_pause(void)
 {
        int r = -1;
 
+       aul_status_update(STATUS_BG);
        if (__context.state == AS_RUNNING) {
+               __context.state = AS_PAUSED;
                if (__context.ops.pause) {
                        traceBegin(TTRACE_TAG_APPLICATION_MANAGER, "APPCORE:PAUSE");
                        _DBG("Call pause callback");
@@ -314,16 +316,16 @@ static void __do_pause(void)
                if (r >= 0 && __context.resource_reclaiming)
                        appcore_base_add_suspend_timer();
 
-               __context.state = AS_PAUSED;
                __prepare_to_suspend();
        }
-       aul_status_update(STATUS_BG);
 }
 
 static void __do_resume(void)
 {
+       aul_status_update(STATUS_VISIBLE);
        if (__context.state == AS_PAUSED || __context.state == AS_CREATED) {
                __exit_from_suspend();
+               __context.state = AS_RUNNING;
                if (__context.ops.resume) {
                        LOG(LOG_DEBUG, "LAUNCH", "[%s:Application:resume:start]", __context.appid);
                        traceBegin(TTRACE_TAG_APPLICATION_MANAGER, "APPCORE:RESUME");
@@ -333,10 +335,7 @@ static void __do_resume(void)
                        traceEnd(TTRACE_TAG_APPLICATION_MANAGER);
                        LOG(LOG_DEBUG, "LAUNCH", "[%s:Application:resume:done]", __context.appid);
                }
-               __context.state = AS_RUNNING;
        }
-
-       aul_status_update(STATUS_VISIBLE);
 }
 
 static GSList *__find_win(unsigned int win)