summaryrefslogtreecommitdiffstats
path: root/chrome/browser/safe_browsing
diff options
context:
space:
mode:
authorjam@chromium.org <jam@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2009-11-02 05:59:37 +0000
committerjam@chromium.org <jam@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2009-11-02 05:59:37 +0000
commit6fad26338ed6119903826156f307e20fe6657c31 (patch)
tree5c6baed35fce907a0cea47ed6091c941db8ebfd1 /chrome/browser/safe_browsing
parentf75c8f13b967b01babc9454506e9d2ed00519e39 (diff)
downloadchromium_src-6fad26338ed6119903826156f307e20fe6657c31.zip
chromium_src-6fad26338ed6119903826156f307e20fe6657c31.tar.gz
chromium_src-6fad26338ed6119903826156f307e20fe6657c31.tar.bz2
Third patch in getting rid of caching MessageLoop pointers and always using ChromeThread instead.
BUG=25354 Review URL: http://codereview.chromium.org/342068 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@30687 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/browser/safe_browsing')
-rw-r--r--chrome/browser/safe_browsing/safe_browsing_blocking_page.cc16
-rw-r--r--chrome/browser/safe_browsing/safe_browsing_blocking_page_unittest.cc7
-rw-r--r--chrome/browser/safe_browsing/safe_browsing_service.cc11
3 files changed, 16 insertions, 18 deletions
diff --git a/chrome/browser/safe_browsing/safe_browsing_blocking_page.cc b/chrome/browser/safe_browsing/safe_browsing_blocking_page.cc
index b66df16..399d16c 100644
--- a/chrome/browser/safe_browsing/safe_browsing_blocking_page.cc
+++ b/chrome/browser/safe_browsing/safe_browsing_blocking_page.cc
@@ -11,7 +11,7 @@
#include "base/histogram.h"
#include "base/string_util.h"
#include "base/values.h"
-#include "chrome/browser/browser_process.h"
+#include "chrome/browser/chrome_thread.h"
#include "chrome/browser/dom_operation_notification_details.h"
#include "chrome/browser/dom_ui/new_tab_ui.h"
#include "chrome/browser/google_util.h"
@@ -437,15 +437,11 @@ void SafeBrowsingBlockingPage::NotifySafeBrowsingService(
SafeBrowsingService* sb_service,
const UnsafeResourceList& unsafe_resources,
bool proceed) {
- MessageLoop* message_loop;
- if (g_browser_process->io_thread())
- message_loop = g_browser_process->io_thread()->message_loop();
- else // For unit-tests, just post on the current thread.
- message_loop = MessageLoop::current();
-
- message_loop->PostTask(FROM_HERE, NewRunnableMethod(
- sb_service, &SafeBrowsingService::OnBlockingPageDone, unsafe_resources,
- proceed));
+ ChromeThread::PostTask(
+ ChromeThread::IO, FROM_HERE,
+ NewRunnableMethod(
+ sb_service, &SafeBrowsingService::OnBlockingPageDone,
+ unsafe_resources, proceed));
}
// static
diff --git a/chrome/browser/safe_browsing/safe_browsing_blocking_page_unittest.cc b/chrome/browser/safe_browsing/safe_browsing_blocking_page_unittest.cc
index b664718..b3463e3 100644
--- a/chrome/browser/safe_browsing/safe_browsing_blocking_page_unittest.cc
+++ b/chrome/browser/safe_browsing/safe_browsing_blocking_page_unittest.cc
@@ -4,6 +4,7 @@
#include "chrome/browser/renderer_host/test/test_render_view_host.h"
+#include "chrome/browser/chrome_thread.h"
#include "chrome/browser/safe_browsing/safe_browsing_blocking_page.h"
#include "chrome/browser/tab_contents/navigation_entry.h"
#include "chrome/common/render_messages.h"
@@ -73,7 +74,8 @@ class SafeBrowsingBlockingPageTest : public RenderViewHostTestHarness,
CANCEL
};
- SafeBrowsingBlockingPageTest() {
+ SafeBrowsingBlockingPageTest()
+ : io_thread_(ChromeThread::IO, MessageLoop::current()) {
ResetUserResponse();
service_ = new SafeBrowsingService();
}
@@ -157,6 +159,7 @@ class SafeBrowsingBlockingPageTest : public RenderViewHostTestHarness,
UserResponse user_response_;
scoped_refptr<SafeBrowsingService> service_;
TestSafeBrowsingBlockingPageFactory factory_;
+ ChromeThread io_thread_;
};
// Tests showing a blocking page for a malware page and not proceeding.
@@ -169,6 +172,8 @@ TEST_F(SafeBrowsingBlockingPageTest, MalwarePageDontProceed) {
SafeBrowsingBlockingPage* sb_interstitial = GetSafeBrowsingBlockingPage();
ASSERT_TRUE(sb_interstitial);
+ MessageLoop::current()->RunAllPending();
+
// Simulate the user clicking "don't proceed".
DontProceedThroughInterstitial(sb_interstitial);
diff --git a/chrome/browser/safe_browsing/safe_browsing_service.cc b/chrome/browser/safe_browsing/safe_browsing_service.cc
index 09912f2..260c592 100644
--- a/chrome/browser/safe_browsing/safe_browsing_service.cc
+++ b/chrome/browser/safe_browsing/safe_browsing_service.cc
@@ -258,13 +258,10 @@ void SafeBrowsingService::DoDisplayBlockingPage(
// Just act as "Don't Proceed" was chosen.
std::vector<UnsafeResource> resources;
resources.push_back(resource);
- MessageLoop* message_loop;
- if (g_browser_process->io_thread())
- message_loop = g_browser_process->io_thread()->message_loop();
- else // For unit-tests, just post on the current thread.
- message_loop = MessageLoop::current();
- message_loop->PostTask(FROM_HERE, NewRunnableMethod(
- this, &SafeBrowsingService::OnBlockingPageDone, resources, false));
+ ChromeThread::PostTask(
+ ChromeThread::IO, FROM_HERE,
+ NewRunnableMethod(
+ this, &SafeBrowsingService::OnBlockingPageDone, resources, false));
return;
}