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

Unified Diff: third_party/zlib/google/zip_reader.cc

Issue 1641513004: Update //base to chromium 9659b08ea5a34f889dc4166217f438095ddc10d2 (Closed) Base URL: git@github.com:domokit/mojo.git@master
Patch Set: Created 4 years, 11 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: third_party/zlib/google/zip_reader.cc
diff --git a/third_party/zlib/google/zip_reader.cc b/third_party/zlib/google/zip_reader.cc
index 59d96da14263cbfb88d2230e8250396152e8b85c..7df46e74156734acc8d99fec117566e293d32ec1 100644
--- a/third_party/zlib/google/zip_reader.cc
+++ b/third_party/zlib/google/zip_reader.cc
@@ -10,6 +10,7 @@
#include "base/message_loop/message_loop.h"
#include "base/strings/string_util.h"
#include "base/strings/utf_string_conversions.h"
+#include "base/thread_task_runner_handle.h"
#include "third_party/zlib/google/zip_internal.h"
#if defined(USE_SYSTEM_MINIZIP)
@@ -130,7 +131,8 @@ ZipReader::EntryInfo::EntryInfo(const std::string& file_name_in_zip,
original_size_ = raw_file_info.uncompressed_size;
// Directory entries in zip files end with "/".
- is_directory_ = EndsWith(file_name_in_zip, "/", false);
+ is_directory_ =
+ base::EndsWith(file_name_in_zip, "/", base::CompareCase::SENSITIVE);
// Check the file name here for directory traversal issues.
is_unsafe_ = file_path_.ReferencesParent();
@@ -144,7 +146,8 @@ ZipReader::EntryInfo::EntryInfo(const std::string& file_name_in_zip,
// We also consider that the file name is unsafe, if it's absolute.
// On Windows, IsAbsolute() returns false for paths starting with "/".
- if (file_path_.IsAbsolute() || StartsWithASCII(file_name_in_zip, "/", false))
+ if (file_path_.IsAbsolute() ||
+ base::StartsWith(file_name_in_zip, "/", base::CompareCase::SENSITIVE))
is_unsafe_ = true;
// Construct the last modified time. The timezone info is not present in
@@ -355,24 +358,26 @@ void ZipReader::ExtractCurrentEntryToFilePathAsync(
// If this is a directory, just create it and return.
if (current_entry_info()->is_directory()) {
if (base::CreateDirectory(output_file_path)) {
- base::MessageLoopProxy::current()->PostTask(FROM_HERE, success_callback);
+ base::ThreadTaskRunnerHandle::Get()->PostTask(FROM_HERE,
+ success_callback);
} else {
DVLOG(1) << "Unzip failed: unable to create directory.";
- base::MessageLoopProxy::current()->PostTask(FROM_HERE, failure_callback);
+ base::ThreadTaskRunnerHandle::Get()->PostTask(FROM_HERE,
+ failure_callback);
}
return;
}
if (unzOpenCurrentFile(zip_file_) != UNZ_OK) {
DVLOG(1) << "Unzip failed: unable to open current zip entry.";
- base::MessageLoopProxy::current()->PostTask(FROM_HERE, failure_callback);
+ base::ThreadTaskRunnerHandle::Get()->PostTask(FROM_HERE, failure_callback);
return;
}
base::FilePath output_dir_path = output_file_path.DirName();
if (!base::CreateDirectory(output_dir_path)) {
DVLOG(1) << "Unzip failed: unable to create containing directory.";
- base::MessageLoopProxy::current()->PostTask(FROM_HERE, failure_callback);
+ base::ThreadTaskRunnerHandle::Get()->PostTask(FROM_HERE, failure_callback);
return;
}
@@ -382,7 +387,7 @@ void ZipReader::ExtractCurrentEntryToFilePathAsync(
if (!output_file.IsValid()) {
DVLOG(1) << "Unzip failed: unable to create platform file at "
<< output_file_path.value();
- base::MessageLoopProxy::current()->PostTask(FROM_HERE, failure_callback);
+ base::ThreadTaskRunnerHandle::Get()->PostTask(FROM_HERE, failure_callback);
return;
}

Powered by Google App Engine
This is Rietveld 408576698