Index: chrome/browser/chromeos/extensions/wallpaper_private_api.cc |
diff --git a/chrome/browser/chromeos/extensions/wallpaper_private_api.cc b/chrome/browser/chromeos/extensions/wallpaper_private_api.cc |
index 4ed7eb890cb1dee718a4fdd22dd2d208fda7934b..f352d4098e4d5f194c4c459cb70eead8e010d3fe 100644 |
--- a/chrome/browser/chromeos/extensions/wallpaper_private_api.cc |
+++ b/chrome/browser/chromeos/extensions/wallpaper_private_api.cc |
@@ -28,6 +28,7 @@ |
#include "base/path_service.h" |
#include "base/strings/string_number_conversions.h" |
#include "base/strings/stringprintf.h" |
+#include "base/threading/sequenced_worker_pool.h" |
#include "base/threading/worker_pool.h" |
#include "chrome/browser/browser_process.h" |
#include "chrome/browser/chromeos/login/users/wallpaper/wallpaper_manager.h" |
@@ -406,11 +407,11 @@ bool WallpaperPrivateSetWallpaperIfExistsFunction::RunAsync() { |
} |
wallpaper_path = wallpaper_path.Append(file_name); |
- sequence_token_ = BrowserThread::GetBlockingPool()->GetNamedSequenceToken( |
- wallpaper::kWallpaperSequenceTokenName); |
scoped_refptr<base::SequencedTaskRunner> task_runner = |
- BrowserThread::GetBlockingPool()-> |
- GetSequencedTaskRunnerWithShutdownBehavior(sequence_token_, |
+ BrowserThread::GetBlockingPool() |
+ ->GetSequencedTaskRunnerWithShutdownBehavior( |
+ BrowserThread::GetBlockingPool()->GetNamedSequenceToken( |
+ wallpaper::kWallpaperSequenceTokenName), |
base::SequencedWorkerPool::CONTINUE_ON_SHUTDOWN); |
task_runner->PostTask(FROM_HERE, |
@@ -424,8 +425,7 @@ bool WallpaperPrivateSetWallpaperIfExistsFunction::RunAsync() { |
void WallpaperPrivateSetWallpaperIfExistsFunction:: |
ReadFileAndInitiateStartDecode(const base::FilePath& file_path, |
const base::FilePath& fallback_path) { |
- DCHECK(BrowserThread::GetBlockingPool()->IsRunningSequenceOnCurrentThread( |
- sequence_token_)); |
+ wallpaper::AssertCalledOnWallpaperSequence(); |
base::FilePath path = file_path; |
if (!base::PathExists(file_path)) |
@@ -512,11 +512,11 @@ void WallpaperPrivateSetWallpaperFunction::OnWallpaperDecoded( |
// Set unsafe_wallpaper_decoder_ to null since the decoding already finished. |
unsafe_wallpaper_decoder_ = NULL; |
- sequence_token_ = BrowserThread::GetBlockingPool()->GetNamedSequenceToken( |
- wallpaper::kWallpaperSequenceTokenName); |
scoped_refptr<base::SequencedTaskRunner> task_runner = |
- BrowserThread::GetBlockingPool()-> |
- GetSequencedTaskRunnerWithShutdownBehavior(sequence_token_, |
+ BrowserThread::GetBlockingPool() |
+ ->GetSequencedTaskRunnerWithShutdownBehavior( |
+ BrowserThread::GetBlockingPool()->GetNamedSequenceToken( |
+ wallpaper::kWallpaperSequenceTokenName), |
base::SequencedWorkerPool::BLOCK_SHUTDOWN); |
task_runner->PostTask(FROM_HERE, |
@@ -524,8 +524,7 @@ void WallpaperPrivateSetWallpaperFunction::OnWallpaperDecoded( |
} |
void WallpaperPrivateSetWallpaperFunction::SaveToFile() { |
- DCHECK(BrowserThread::GetBlockingPool()->IsRunningSequenceOnCurrentThread( |
- sequence_token_)); |
+ wallpaper::AssertCalledOnWallpaperSequence(); |
std::string file_name = GURL(params->url).ExtractFileName(); |
if (SaveData(chrome::DIR_CHROMEOS_WALLPAPERS, file_name, params->wallpaper)) { |
wallpaper_.EnsureRepsForSupportedScales(); |
@@ -652,11 +651,11 @@ void WallpaperPrivateSetCustomWallpaperFunction::OnWallpaperDecoded( |
wallpaper::kThumbnailWallpaperSubDir, wallpaper_files_id_, |
params->file_name); |
- sequence_token_ = BrowserThread::GetBlockingPool()->GetNamedSequenceToken( |
- wallpaper::kWallpaperSequenceTokenName); |
scoped_refptr<base::SequencedTaskRunner> task_runner = |
- BrowserThread::GetBlockingPool()-> |
- GetSequencedTaskRunnerWithShutdownBehavior(sequence_token_, |
+ BrowserThread::GetBlockingPool() |
+ ->GetSequencedTaskRunnerWithShutdownBehavior( |
+ BrowserThread::GetBlockingPool()->GetNamedSequenceToken( |
+ wallpaper::kWallpaperSequenceTokenName), |
base::SequencedWorkerPool::BLOCK_SHUTDOWN); |
wallpaper::WallpaperLayout layout = wallpaper_api_util::GetLayoutEnum( |
@@ -694,8 +693,7 @@ void WallpaperPrivateSetCustomWallpaperFunction::OnWallpaperDecoded( |
void WallpaperPrivateSetCustomWallpaperFunction::GenerateThumbnail( |
const base::FilePath& thumbnail_path, |
std::unique_ptr<gfx::ImageSkia> image) { |
- DCHECK(BrowserThread::GetBlockingPool()->IsRunningSequenceOnCurrentThread( |
- sequence_token_)); |
+ wallpaper::AssertCalledOnWallpaperSequence(); |
if (!base::PathExists(thumbnail_path.DirName())) |
base::CreateDirectory(thumbnail_path.DirName()); |
@@ -812,11 +810,11 @@ bool WallpaperPrivateGetThumbnailFunction::RunAsync() { |
chromeos::switches::kDefaultWallpaperSmall); |
} |
- sequence_token_ = BrowserThread::GetBlockingPool()->GetNamedSequenceToken( |
- wallpaper::kWallpaperSequenceTokenName); |
scoped_refptr<base::SequencedTaskRunner> task_runner = |
- BrowserThread::GetBlockingPool()-> |
- GetSequencedTaskRunnerWithShutdownBehavior(sequence_token_, |
+ BrowserThread::GetBlockingPool() |
+ ->GetSequencedTaskRunnerWithShutdownBehavior( |
+ BrowserThread::GetBlockingPool()->GetNamedSequenceToken( |
+ wallpaper::kWallpaperSequenceTokenName), |
base::SequencedWorkerPool::CONTINUE_ON_SHUTDOWN); |
task_runner->PostTask(FROM_HERE, |
@@ -843,8 +841,7 @@ void WallpaperPrivateGetThumbnailFunction::FileLoaded( |
} |
void WallpaperPrivateGetThumbnailFunction::Get(const base::FilePath& path) { |
- DCHECK(BrowserThread::GetBlockingPool()->IsRunningSequenceOnCurrentThread( |
- sequence_token_)); |
+ wallpaper::AssertCalledOnWallpaperSequence(); |
std::string data; |
if (GetData(path, &data)) { |
if (data.empty()) { |
@@ -876,11 +873,11 @@ bool WallpaperPrivateSaveThumbnailFunction::RunAsync() { |
save_thumbnail::Params::Create(*args_)); |
EXTENSION_FUNCTION_VALIDATE(params); |
- sequence_token_ = BrowserThread::GetBlockingPool()->GetNamedSequenceToken( |
- wallpaper::kWallpaperSequenceTokenName); |
scoped_refptr<base::SequencedTaskRunner> task_runner = |
- BrowserThread::GetBlockingPool()-> |
- GetSequencedTaskRunnerWithShutdownBehavior(sequence_token_, |
+ BrowserThread::GetBlockingPool() |
+ ->GetSequencedTaskRunnerWithShutdownBehavior( |
+ BrowserThread::GetBlockingPool()->GetNamedSequenceToken( |
+ wallpaper::kWallpaperSequenceTokenName), |
base::SequencedWorkerPool::CONTINUE_ON_SHUTDOWN); |
task_runner->PostTask(FROM_HERE, |
@@ -902,8 +899,7 @@ void WallpaperPrivateSaveThumbnailFunction::Success() { |
void WallpaperPrivateSaveThumbnailFunction::Save(const std::vector<char>& data, |
const std::string& file_name) { |
- DCHECK(BrowserThread::GetBlockingPool()->IsRunningSequenceOnCurrentThread( |
- sequence_token_)); |
+ wallpaper::AssertCalledOnWallpaperSequence(); |
if (SaveData(chrome::DIR_CHROMEOS_WALLPAPER_THUMBNAILS, file_name, data)) { |
BrowserThread::PostTask( |
BrowserThread::UI, FROM_HERE, |
@@ -925,11 +921,11 @@ WallpaperPrivateGetOfflineWallpaperListFunction:: |
} |
bool WallpaperPrivateGetOfflineWallpaperListFunction::RunAsync() { |
- sequence_token_ = BrowserThread::GetBlockingPool()->GetNamedSequenceToken( |
- wallpaper::kWallpaperSequenceTokenName); |
scoped_refptr<base::SequencedTaskRunner> task_runner = |
- BrowserThread::GetBlockingPool()-> |
- GetSequencedTaskRunnerWithShutdownBehavior(sequence_token_, |
+ BrowserThread::GetBlockingPool() |
+ ->GetSequencedTaskRunnerWithShutdownBehavior( |
+ BrowserThread::GetBlockingPool()->GetNamedSequenceToken( |
+ wallpaper::kWallpaperSequenceTokenName), |
base::SequencedWorkerPool::CONTINUE_ON_SHUTDOWN); |
task_runner->PostTask(FROM_HERE, |
@@ -939,8 +935,7 @@ bool WallpaperPrivateGetOfflineWallpaperListFunction::RunAsync() { |
} |
void WallpaperPrivateGetOfflineWallpaperListFunction::GetList() { |
- DCHECK(BrowserThread::GetBlockingPool()->IsRunningSequenceOnCurrentThread( |
- sequence_token_)); |
+ wallpaper::AssertCalledOnWallpaperSequence(); |
std::vector<std::string> file_list; |
base::FilePath wallpaper_dir; |
CHECK(PathService::Get(chrome::DIR_CHROMEOS_WALLPAPERS, &wallpaper_dir)); |