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

Unified Diff: chrome/browser/media_galleries/fileapi/picasa/picasa_file_util.cc

Issue 18986012: Media Galleries API Picasa: Make PicasaDataProvider handle async PMP and INI parsing robustly. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@0039-picasa-import-sandbox-ini-parsing
Patch Set: Created 7 years, 5 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
Index: chrome/browser/media_galleries/fileapi/picasa/picasa_file_util.cc
diff --git a/chrome/browser/media_galleries/fileapi/picasa/picasa_file_util.cc b/chrome/browser/media_galleries/fileapi/picasa/picasa_file_util.cc
index d15cb78f9677b728524e35810c75311765cb7b2d..6b887cf1f1a64a7c98afcbbea5df9a7000784011 100644
--- a/chrome/browser/media_galleries/fileapi/picasa/picasa_file_util.cc
+++ b/chrome/browser/media_galleries/fileapi/picasa/picasa_file_util.cc
@@ -64,6 +64,7 @@ void PicasaFileUtil::GetFileInfoOnTaskRunnerThread(
const fileapi::FileSystemURL& url,
const GetFileInfoCallback& callback) {
GetDataProvider()->RefreshData(
+ PicasaDataProvider::LIST_OF_ALBUMS_AND_FOLDERS_DATA,
base::Bind(&PicasaFileUtil::GetFileInfoWithFreshDataProvider,
weak_factory_.GetWeakPtr(), base::Passed(&context), url,
callback));
@@ -74,6 +75,7 @@ void PicasaFileUtil::ReadDirectoryOnTaskRunnerThread(
const fileapi::FileSystemURL& url,
const ReadDirectoryCallback& callback) {
GetDataProvider()->RefreshData(
+ PicasaDataProvider::LIST_OF_ALBUMS_AND_FOLDERS_DATA,
base::Bind(&PicasaFileUtil::ReadDirectoryWithFreshDataProvider,
weak_factory_.GetWeakPtr(), base::Passed(&context), url,
callback));
@@ -281,7 +283,16 @@ base::PlatformFileError PicasaFileUtil::GetLocalFilePath(
void PicasaFileUtil::GetFileInfoWithFreshDataProvider(
scoped_ptr<fileapi::FileSystemOperationContext> context,
const fileapi::FileSystemURL& url,
- const GetFileInfoCallback& callback) {
+ const GetFileInfoCallback& callback,
+ bool success) {
+ if (!success) {
+ content::BrowserThread::PostTask(
+ content::BrowserThread::IO,
+ FROM_HERE,
+ base::Bind(callback, base::PLATFORM_FILE_ERROR_IO,
+ base::PlatformFileInfo()));
+ return;
+ }
NativeMediaFileUtil::GetFileInfoOnTaskRunnerThread(context.Pass(), url,
callback);
}
@@ -289,7 +300,16 @@ void PicasaFileUtil::GetFileInfoWithFreshDataProvider(
void PicasaFileUtil::ReadDirectoryWithFreshDataProvider(
scoped_ptr<fileapi::FileSystemOperationContext> context,
const fileapi::FileSystemURL& url,
- const ReadDirectoryCallback& callback) {
+ const ReadDirectoryCallback& callback,
+ bool success) {
+ if (!success) {
+ content::BrowserThread::PostTask(
+ content::BrowserThread::IO,
+ FROM_HERE,
+ base::Bind(callback, base::PLATFORM_FILE_ERROR_IO,
+ base::PlatformFileInfo()));
+ return;
+ }
NativeMediaFileUtil::ReadDirectoryOnTaskRunnerThread(context.Pass(), url,
callback);
}

Powered by Google App Engine
This is Rietveld 408576698