[MM][CAPI] handling dom onerror event on page load for MediaElement
authorUmesh Kumar Patel <umeshk.patel@samsung.com>
Mon, 27 Jul 2015 08:06:04 +0000 (13:36 +0530)
committerYoungsoo Choi <kenshin.choi@samsung.com>
Tue, 10 Jul 2018 07:55:23 +0000 (07:55 +0000)
Any media-src related error during page load was not handled,
due to which dom event |onerror| was not called and causes
Audio and Video onerror tct testcase failure.

Calling player_prepare_async during page load to handle.

Bug: http://web.sec.samsung.net/bugzilla/show_bug.cgi?id=14703
Bug: http://web.sec.samsung.net/bugzilla/show_bug.cgi?id=13396
Bug: http://168.219.209.56/jira/browse/TSAM-127

Reviewed by: sns.park

Change-Id: Idcdc65b86fc464d06f055701d475040251c78f39
Signed-off-by: Umesh Kumar Patel <umeshk.patel@samsung.com>
tizen_src/chromium_impl/media/base/tizen/media_player_bridge_capi.cc

index 8920dbce2deae8f0eb972c751521c51e2d27fe03..6355d7402c61bbb53d491053f6a03f9026d3be5a 100755 (executable)
@@ -242,10 +242,15 @@ MediaPlayerBridgeCapi::MediaPlayerBridgeCapi(
 #endif
 #endif
 
-  manager()->OnReadyStateChange(GetPlayerId(),
-                                MediaPlayerEfl::ReadyStateHaveEnoughData);
-  manager()->OnNetworkStateChange(GetPlayerId(),
-                                  MediaPlayerEfl::NetworkStateLoading);
+  ret = player_prepare_async(player_, PlayerPreparedCb, this);
+  if (ret != PLAYER_ERROR_NONE) {
+    HandleError(ret, "player_prepare_async");
+  } else {
+    manager()->OnReadyStateChange(GetPlayerId(),
+                                  MediaPlayerEfl::ReadyStateHaveEnoughData);
+    manager()->OnNetworkStateChange(GetPlayerId(),
+                                    MediaPlayerEfl::NetworkStateLoading);
+  }
 }
 
 MediaPlayerBridgeCapi::~MediaPlayerBridgeCapi() {