[MediaController] Fix metadata bug (#1621)
authorhsgwon <haesu.gwon@samsung.com>
Wed, 1 Jul 2020 11:25:58 +0000 (20:25 +0900)
committerGitHub <noreply@github.com>
Wed, 1 Jul 2020 11:25:58 +0000 (20:25 +0900)
* [MediaController] Fix metadata bug

src/Tizen.Multimedia.Remoting/MediaController/MediaControlMetadata.cs

index 95869e6..7defc48 100644 (file)
@@ -15,7 +15,6 @@
  */
 
 using System;
-using System.Diagnostics;
 using Native = Interop.MediaControllerPlaylist;
 
 namespace Tizen.Multimedia.Remoting
@@ -36,7 +35,13 @@ namespace Tizen.Multimedia.Remoting
 
         internal MediaControlMetadata(IntPtr handle)
         {
-            Debug.Assert(handle != IntPtr.Zero);
+            // If native framework return null handle,
+            // it means server doesn't set metadata yet and it's not error.
+            // So we need to return empty metadata instance as native framework does.
+            if (handle == IntPtr.Zero)
+            {
+                return;
+            }
 
             Title = Native.GetMetadata(handle, MediaControllerNativeAttribute.Title);
             Artist = Native.GetMetadata(handle, MediaControllerNativeAttribute.Artist);
@@ -51,13 +56,8 @@ namespace Tizen.Multimedia.Remoting
             AlbumArtPath = Native.GetMetadata(handle, MediaControllerNativeAttribute.Picture);
 
             EncodedSeason = Native.GetMetadata(handle, MediaControllerNativeAttribute.Season);
-            Season = DecodeSeason(EncodedSeason);
-
             EncodedEpisode = Native.GetMetadata(handle, MediaControllerNativeAttribute.Episode);
-            Episode = DecodeEpisode(EncodedEpisode);
-
             EncodedResolution = Native.GetMetadata(handle, MediaControllerNativeAttribute.Resolution);
-            Resolution = DecodeResolution(EncodedResolution);
         }
 
         /// <summary>