Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(602)

Unified Diff: content/browser/media/webrtc_browsertest.cc

Issue 251323002: Working around IO thread chrashes for WebRTC tests on Android. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Sleeping five seconds. Created 6 years, 8 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « build/android/pylib/gtest/filter/content_browsertests_disabled ('k') | no next file » | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: content/browser/media/webrtc_browsertest.cc
diff --git a/content/browser/media/webrtc_browsertest.cc b/content/browser/media/webrtc_browsertest.cc
index ce566ae2db5d63510e5144468156f1e520fbf1a9..2f81335010adb061c6cf7bed32f70e72026802f7 100644
--- a/content/browser/media/webrtc_browsertest.cc
+++ b/content/browser/media/webrtc_browsertest.cc
@@ -5,6 +5,7 @@
#include "base/command_line.h"
#include "base/file_util.h"
#include "base/strings/stringprintf.h"
+#include "base/threading/platform_thread.h"
#include "base/values.h"
#include "content/browser/media/webrtc_internals.h"
#include "content/browser/web_contents/web_contents_impl.h"
@@ -45,6 +46,18 @@ class WebRtcBrowserTest : public WebRtcContentBrowserTest,
command_line->AppendSwitch(switches::kEnableAudioTrackProcessing);
}
+ virtual void TearDownOnMainThread() OVERRIDE {
+#if defined(OS_ANDROID)
+ // TODO(phoglund): this is a ugly workaround to let the IO thread
+ // finish its work. The reason we need this on Android is that
+ // content_browsertests tearDown logic is broken with respect
+ // to threading, which causes the IO thread to compete with the
+ // teardown. See http://crbug.com/362852. I also tried with 2
+ // seconds, but that isn't enough.
+ base::PlatformThread::Sleep(base::TimeDelta::FromSeconds(5));
+#endif
+ }
+
// Convenience function since most peerconnection-call.html tests just load
// the page, kick off some javascript and wait for the title to change to OK.
void MakeTypicalPeerConnectionCall(const std::string& javascript) {
@@ -58,7 +71,7 @@ class WebRtcBrowserTest : public WebRtcContentBrowserTest,
}
void DisableOpusIfOnAndroid() {
-#if defined (OS_ANDROID)
+#if defined(OS_ANDROID)
// Always force iSAC 16K on Android for now (Opus is broken).
EXPECT_EQ("isac-forced",
ExecuteJavascriptAndReturnResult("forceIsac16KInSdp();"));
« no previous file with comments | « build/android/pylib/gtest/filter/content_browsertests_disabled ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698