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

Unified Diff: storage/browser/fileapi/isolated_context.cc

Issue 2347253002: Remove stl_util's STLDeleteContainerPairSecondPointers from storage/. (Closed)
Patch Set: Created 4 years, 3 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: storage/browser/fileapi/isolated_context.cc
diff --git a/storage/browser/fileapi/isolated_context.cc b/storage/browser/fileapi/isolated_context.cc
index 0ca6d25ea3dc16c50fd0f4fa4dbb1193f86f1f6f..d1b649d611f0d81da6584dca84f59e12b74875fb 100644
--- a/storage/browser/fileapi/isolated_context.cc
+++ b/storage/browser/fileapi/isolated_context.cc
@@ -9,8 +9,8 @@
#include "base/logging.h"
#include "base/macros.h"
+#include "base/memory/ptr_util.h"
#include "base/rand_util.h"
-#include "base/stl_util.h"
#include "base/strings/string_number_conversions.h"
#include "base/strings/string_util.h"
#include "base/strings/stringprintf.h"
@@ -219,8 +219,8 @@ std::string IsolatedContext::RegisterDraggedFileSystem(
const FileInfoSet& files) {
base::AutoLock locker(lock_);
std::string filesystem_id = GetNewFileSystemId();
- instance_map_[filesystem_id] = new Instance(
- kFileSystemTypeDragged, files.fileset());
+ instance_map_[filesystem_id] =
+ base::MakeUnique<Instance>(kFileSystemTypeDragged, files.fileset());
return filesystem_id;
}
@@ -243,9 +243,8 @@ std::string IsolatedContext::RegisterFileSystemForPath(
base::AutoLock locker(lock_);
std::string new_id = GetNewFileSystemId();
- instance_map_[new_id] = new Instance(type, filesystem_id,
- MountPointInfo(name, path),
- Instance::PLATFORM_PATH);
+ instance_map_[new_id] = base::MakeUnique<Instance>(
+ type, filesystem_id, MountPointInfo(name, path), Instance::PLATFORM_PATH);
path_to_id_map_[path].insert(new_id);
return new_id;
}
@@ -259,7 +258,7 @@ std::string IsolatedContext::RegisterFileSystemForVirtualPath(
if (path.ReferencesParent())
return std::string();
std::string filesystem_id = GetNewFileSystemId();
- instance_map_[filesystem_id] = new Instance(
+ instance_map_[filesystem_id] = base::MakeUnique<Instance>(
type,
std::string(), // filesystem_id
MountPointInfo(register_name, cracked_path_prefix),
@@ -281,7 +280,7 @@ bool IsolatedContext::GetRegisteredPath(
const std::string& filesystem_id, base::FilePath* path) const {
DCHECK(path);
base::AutoLock locker(lock_);
- IDToInstance::const_iterator found = instance_map_.find(filesystem_id);
+ auto found = instance_map_.find(filesystem_id);
if (found == instance_map_.end() || !found->second->IsSinglePathInstance())
return false;
*path = found->second->file_info().path;
@@ -319,11 +318,11 @@ bool IsolatedContext::CrackVirtualPath(
base::FilePath cracked_path;
{
base::AutoLock locker(lock_);
- IDToInstance::const_iterator found_instance = instance_map_.find(fsid);
+ auto found_instance = instance_map_.find(fsid);
if (found_instance == instance_map_.end())
return false;
*id_or_name = fsid;
- const Instance* instance = found_instance->second;
+ const Instance* instance = found_instance->second.get();
if (type)
*type = instance->type();
if (cracked_id)
@@ -364,18 +363,12 @@ FileSystemURL IsolatedContext::CreateCrackedFileSystemURL(
void IsolatedContext::RevokeFileSystemByPath(const base::FilePath& path_in) {
base::AutoLock locker(lock_);
base::FilePath path(path_in.NormalizePathSeparators());
- PathToID::iterator ids_iter = path_to_id_map_.find(path);
+ auto ids_iter = path_to_id_map_.find(path);
if (ids_iter == path_to_id_map_.end())
return;
std::set<std::string>& ids = ids_iter->second;
- for (std::set<std::string>::iterator iter = ids.begin();
- iter != ids.end(); ++iter) {
- IDToInstance::iterator found = instance_map_.find(*iter);
- if (found != instance_map_.end()) {
- delete found->second;
- instance_map_.erase(found);
- }
- }
+ for (auto iter = ids.begin(); iter != ids.end(); ++iter)
+ instance_map_.erase(*iter);
path_to_id_map_.erase(ids_iter);
}
@@ -389,10 +382,10 @@ void IsolatedContext::RemoveReference(const std::string& filesystem_id) {
base::AutoLock locker(lock_);
// This could get called for non-existent filesystem if it has been
// already deleted by RevokeFileSystemByPath.
- IDToInstance::iterator found = instance_map_.find(filesystem_id);
+ auto found = instance_map_.find(filesystem_id);
if (found == instance_map_.end())
return;
- Instance* instance = found->second;
+ Instance* instance = found->second.get();
DCHECK_GT(instance->ref_counts(), 0);
instance->RemoveRef();
if (instance->ref_counts() == 0) {
@@ -406,7 +399,7 @@ bool IsolatedContext::GetDraggedFileInfo(
std::vector<MountPointInfo>* files) const {
DCHECK(files);
base::AutoLock locker(lock_);
- IDToInstance::const_iterator found = instance_map_.find(filesystem_id);
+ auto found = instance_map_.find(filesystem_id);
if (found == instance_map_.end() ||
found->second->type() != kFileSystemTypeDragged)
return false;
@@ -424,8 +417,6 @@ IsolatedContext::IsolatedContext() {
}
IsolatedContext::~IsolatedContext() {
danakj 2016/09/16 19:49:14 = default?
Avi (use Gerrit) 2016/09/16 20:08:51 Done.
- base::STLDeleteContainerPairSecondPointers(instance_map_.begin(),
- instance_map_.end());
}
FileSystemURL IsolatedContext::CrackFileSystemURL(
@@ -454,19 +445,17 @@ FileSystemURL IsolatedContext::CrackFileSystemURL(
bool IsolatedContext::UnregisterFileSystem(const std::string& filesystem_id) {
lock_.AssertAcquired();
- IDToInstance::iterator found = instance_map_.find(filesystem_id);
+ auto found = instance_map_.find(filesystem_id);
if (found == instance_map_.end())
return false;
- Instance* instance = found->second;
+ Instance* instance = found->second.get();
if (instance->IsSinglePathInstance()) {
- PathToID::iterator ids_iter = path_to_id_map_.find(
- instance->file_info().path);
+ auto ids_iter = path_to_id_map_.find(instance->file_info().path);
DCHECK(ids_iter != path_to_id_map_.end());
ids_iter->second.erase(filesystem_id);
if (ids_iter->second.empty())
path_to_id_map_.erase(ids_iter);
}
- delete found->second;
instance_map_.erase(found);
return true;
}

Powered by Google App Engine
This is Rietveld 408576698