summaryrefslogtreecommitdiffstats
path: root/chrome/browser/download/chrome_download_manager_delegate.cc
diff options
context:
space:
mode:
Diffstat (limited to 'chrome/browser/download/chrome_download_manager_delegate.cc')
-rw-r--r--chrome/browser/download/chrome_download_manager_delegate.cc16
1 files changed, 8 insertions, 8 deletions
diff --git a/chrome/browser/download/chrome_download_manager_delegate.cc b/chrome/browser/download/chrome_download_manager_delegate.cc
index 1134636..2a8d6c6 100644
--- a/chrome/browser/download/chrome_download_manager_delegate.cc
+++ b/chrome/browser/download/chrome_download_manager_delegate.cc
@@ -17,6 +17,7 @@
#include "base/strings/stringprintf.h"
#include "base/strings/utf_string_conversions.h"
#include "base/task_runner.h"
+#include "base/task_runner_util.h"
#include "base/threading/sequenced_worker_pool.h"
#include "base/time/time.h"
#include "chrome/browser/browser_process.h"
@@ -177,13 +178,10 @@ void CheckDownloadUrlDone(
#endif // FULL_SAFE_BROWSING
// Called on the blocking pool to determine the MIME type for |path|.
-void GetMimeTypeAndReplyOnUIThread(
- const base::FilePath& path,
- const base::Callback<void(const std::string&)>& callback) {
+std::string GetMimeType(const base::FilePath& path) {
std::string mime_type;
net::GetMimeTypeFromFile(path, &mime_type);
- BrowserThread::PostTask(
- BrowserThread::UI, FROM_HERE, base::Bind(callback, mime_type));
+ return mime_type;
}
bool IsOpenInBrowserPreferreredForFile(const base::FilePath& path) {
@@ -636,9 +634,11 @@ void ChromeDownloadManagerDelegate::CheckDownloadUrl(
void ChromeDownloadManagerDelegate::GetFileMimeType(
const base::FilePath& path,
const GetFileMimeTypeCallback& callback) {
- BrowserThread::PostBlockingPoolTask(
- FROM_HERE,
- base::Bind(&GetMimeTypeAndReplyOnUIThread, path, callback));
+ DCHECK(BrowserThread::CurrentlyOn(BrowserThread::UI));
+ base::PostTaskAndReplyWithResult(BrowserThread::GetBlockingPool(),
+ FROM_HERE,
+ base::Bind(&GetMimeType, path),
+ callback);
}
#if defined(FULL_SAFE_BROWSING)