From 1e46ff627152c5b9cdbcbf62074de66a0baea86c Mon Sep 17 00:00:00 2001 From: "tzik@chromium.org" Date: Wed, 15 Aug 2012 14:30:34 +0000 Subject: Handle invalid usage cache file path usage_file_path can be empty when a FileSystem is accessed after DeleteFileSystem call. BUG= Review URL: https://chromiumcodereview.appspot.com/10832316 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@151692 0039d316-1c4b-4281-b951-d872f2087c98 --- webkit/fileapi/file_system_usage_cache.cc | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/webkit/fileapi/file_system_usage_cache.cc b/webkit/fileapi/file_system_usage_cache.cc index 73f4cbe..f122378 100644 --- a/webkit/fileapi/file_system_usage_cache.cc +++ b/webkit/fileapi/file_system_usage_cache.cc @@ -130,9 +130,9 @@ int64 FileSystemUsageCache::Read(const FilePath& usage_file_path, uint32* dirty) { char buffer[kUsageFileSize]; const char *header; - DCHECK(!usage_file_path.empty()); - if (kUsageFileSize != - file_util::ReadFile(usage_file_path, buffer, kUsageFileSize)) + if (usage_file_path.empty() || + kUsageFileSize != file_util::ReadFile(usage_file_path, + buffer, kUsageFileSize)) return -1; Pickle read_pickle(buffer, kUsageFileSize); PickleIterator iter(read_pickle); @@ -164,9 +164,9 @@ int FileSystemUsageCache::Write(const FilePath& usage_file_path, write_pickle.WriteUInt32(dirty); write_pickle.WriteInt64(fs_usage); - DCHECK(!usage_file_path.empty()); FilePath temporary_usage_file_path; - if (!file_util::CreateTemporaryFileInDir(usage_file_path.DirName(), + if (usage_file_path.empty() || + !file_util::CreateTemporaryFileInDir(usage_file_path.DirName(), &temporary_usage_file_path)) { return -1; } -- cgit v1.1