Unprepare player whenever player is stoped
authorKyuho Jo <kyuho.jo@samsung.com>
Mon, 8 May 2017 11:51:17 +0000 (20:51 +0900)
committerChulSeung Kim <charles0.kim@samsung.com>
Mon, 8 May 2017 21:52:07 +0000 (06:52 +0900)
Signed-off-by: Kyuho Jo <kyuho.jo@samsung.com>
Change-Id: Ib39fcde8fec799c4d11cdb737a428330216d24e3

TVMediaHub/TVMediaHub.Tizen/Views/VideoPlayer.xaml.cs

index 5be4fab139e8ee10a64ab59686e90f6be7d6e848..d955887f5d1057b78c7f1f9f34395666111d3c2f 100755 (executable)
@@ -134,6 +134,7 @@ namespace TVMediaHub.Tizen.Views
                 try
                 {
                     playerInstance?.Stop();
+                    playerInstance?.Unprepare();
                     fullScreenWindow?.Hide();
                 }
                 catch (Exception ex)
@@ -258,6 +259,12 @@ namespace TVMediaHub.Tizen.Views
         {
             Device.BeginInvokeOnMainThread(() =>
             {
+                if (playerInstance.State != PlayerState.Ready &&
+                    playerInstance.State != PlayerState.Paused &&
+                    playerInstance.State != PlayerState.Playing)
+                {
+                    return;
+                }
                 int playPosition = playerInstance.GetPlayPosition();
                 SetPlayTime(playPosition);
                 progress.Progress = (double)playPosition / duration;
@@ -343,6 +350,7 @@ namespace TVMediaHub.Tizen.Views
                     try
                     {
                         playerInstance.Stop();
+                        playerInstance.Unprepare();
                     }
                     catch (Exception ex)
                     {
@@ -378,6 +386,7 @@ namespace TVMediaHub.Tizen.Views
                 try
                 {
                     playerInstance.Stop();
+                    playerInstance.Unprepare();
                 }
                 catch (Exception ex)
                 {