buffet: StorageInterface::Save accepts const reference
Out codebase mostly written with assumption that const parameters
passed as const reference.
Looking at storage_->Save(&dict) reader may believe that dict is the
destination for Save.
BUG=none
TEST=gizmo-emerge buffet
Change-Id: I15b2b1a48e3053979ecd28a8e8775997e7b7e06d
Reviewed-on: https://chromium-review.googlesource.com/270793
Commit-Queue: Vitaly Buka <vitalybuka@chromium.org>
Tested-by: Vitaly Buka <vitalybuka@chromium.org>
Reviewed-by: Alex Vakulenko <avakulenko@chromium.org>
diff --git a/buffet/storage_impls.cc b/buffet/storage_impls.cc
index d95538a..e45ddbf 100644
--- a/buffet/storage_impls.cc
+++ b/buffet/storage_impls.cc
@@ -23,10 +23,10 @@
return std::unique_ptr<base::Value>(base::JSONReader::Read(json));
}
-bool FileStorage::Save(const base::Value* config) {
+bool FileStorage::Save(const base::Value& config) {
std::string json;
base::JSONWriter::WriteWithOptions(
- config, base::JSONWriter::OPTIONS_PRETTY_PRINT, &json);
+ &config, base::JSONWriter::OPTIONS_PRETTY_PRINT, &json);
return base::ImportantFileWriter::WriteFileAtomically(file_path_, json);
}
@@ -35,8 +35,8 @@
return std::unique_ptr<base::Value>(cache_->DeepCopy());
}
-bool MemStorage::Save(const base::Value* config) {
- cache_.reset(config->DeepCopy());
+bool MemStorage::Save(const base::Value& config) {
+ cache_.reset(config.DeepCopy());
++save_count_;
return true;
}