Call live service pause/resume on app pause/resume 11/45811/1
authorjinwoo.shin <jw0227.shin@samsung.com>
Tue, 11 Aug 2015 12:13:38 +0000 (21:13 +0900)
committerjinwoo.shin <jw0227.shin@samsung.com>
Tue, 11 Aug 2015 12:13:38 +0000 (21:13 +0900)
Change-Id: I37a556b1c392bb18ceff005c5e35d96cf5fedac3
Signed-off-by: jinwoo.shin <jw0227.shin@samsung.com>
src/tv.c

index 804e964..ecf5049 100644 (file)
--- a/src/tv.c
+++ b/src/tv.c
@@ -1055,12 +1055,8 @@ int tv_destroy(void)
 {
        int r;
 
-       if (g_tv_info.live_svc) {
-               r = tv_service_live_destroy(g_tv_info.live_svc);
-               if (r != TVS_ERROR_OK)
-                       _ERR("failed to destroy live service");
+       if (g_tv_info.live_svc)
                g_tv_info.live_svc = NULL;
-       }
 
        r = tv_service_channel_info_destroy();
        if (r < 0)
@@ -1126,10 +1122,9 @@ int tv_pause(void)
        int r;
 
        if (g_tv_info.live_svc) {
-               r = tv_service_live_destroy(g_tv_info.live_svc);
+               r = tv_service_live_tune_pause(g_tv_info.live_svc);
                if (r != TVS_ERROR_OK)
-                       _ERR("failed to destroy live service");
-               g_tv_info.live_svc = NULL;
+                       _ERR("failed to pause live service");
        }
 
        return 0;
@@ -1151,10 +1146,17 @@ int tv_resume(void)
 {
        int r;
 
-       if (g_tv_info.live_svc)
-               return 0;
+       if (!g_tv_info.live_svc) {
+               r = tv_service_live_create(&g_tv_info.live_svc);
+               if (r != TVS_ERROR_OK) {
+                       _ERR("failed to create live service");
+                       goto err;
+               } else {
+                       return 1;
+               }
+       }
 
-       r = tv_service_live_create(&g_tv_info.live_svc);
+       r = tv_service_live_tune_resume(g_tv_info.live_svc);
        if (r != TVS_ERROR_OK) {
                _ERR("failed to create live service");
                goto err;
@@ -1167,7 +1169,7 @@ int tv_resume(void)
                goto err;
        }
 
-       return 1;
+       return 0;
 
 err:
        tv_destroy();