Index: webkit/media/android/webmediaplayer_manager_android.cc |
diff --git a/webkit/media/android/webmediaplayer_manager_android.cc b/webkit/media/android/webmediaplayer_manager_android.cc |
index b0a863441d144b3a0849805b8765a8df320d269b..218f1356f762fe1eba5b127ad04194cf563dbdbb 100644 |
--- a/webkit/media/android/webmediaplayer_manager_android.cc |
+++ b/webkit/media/android/webmediaplayer_manager_android.cc |
@@ -26,11 +26,16 @@ void WebMediaPlayerManagerAndroid::UnregisterMediaPlayer(int player_id) { |
media_players_.erase(player_id); |
} |
-void WebMediaPlayerManagerAndroid::ReleaseMediaResources() { |
+void WebMediaPlayerManagerAndroid::ReleaseMediaResourcesIfNotPlaying() { |
std::map<int32, WebMediaPlayerAndroid*>::iterator player_it; |
for (player_it = media_players_.begin(); |
player_it != media_players_.end(); ++player_it) { |
- (player_it->second)->ReleaseMediaResources(); |
+ WebMediaPlayerAndroid* player = player_it->second; |
+ DCHECK(player); |
qinmin
2012/11/14 18:14:29
useless DCHECK
Miguel Garcia
2012/11/14 18:50:32
removed
|
+ |
+ // Do not release if an audio track is still playing |
+ if (player && (!player->hasAudio() || player->paused())) |
qinmin
2012/11/14 18:14:29
hasAudio() always return true on android. Even on
Miguel Garcia
2012/11/14 18:50:32
Removed
On 2012/11/14 18:14:29, qinmin wrote:
|
+ player->ReleaseMediaResources(); |
} |
} |