| Index: chrome/browser/diagnostics/diagnostics_model.cc
|
| diff --git a/chrome/browser/diagnostics/diagnostics_model.cc b/chrome/browser/diagnostics/diagnostics_model.cc
|
| index edcb78dec066f7a6ffd27f4ef653b9f324dae3fd..320113ac6625fb618d6a1fd054c81b6dcad432dc 100644
|
| --- a/chrome/browser/diagnostics/diagnostics_model.cc
|
| +++ b/chrome/browser/diagnostics/diagnostics_model.cc
|
| @@ -5,13 +5,13 @@
|
| #include "chrome/browser/diagnostics/diagnostics_model.h"
|
|
|
| #include <algorithm>
|
| +#include <memory>
|
| #include <vector>
|
|
|
| #include "base/command_line.h"
|
| #include "base/files/file_path.h"
|
| #include "base/macros.h"
|
| #include "base/path_service.h"
|
| -#include "base/stl_util.h"
|
| #include "base/strings/string_util.h"
|
| #include "build/build_config.h"
|
| #include "chrome/browser/diagnostics/diagnostics_test.h"
|
| @@ -50,7 +50,7 @@ class DiagnosticsModelImpl : public DiagnosticsModel {
|
| public:
|
| DiagnosticsModelImpl() : tests_run_(0) {}
|
|
|
| - ~DiagnosticsModelImpl() override { base::STLDeleteElements(&tests_); }
|
| + ~DiagnosticsModelImpl() override {}
|
|
|
| int GetTestRunCount() const override { return tests_run_; }
|
|
|
| @@ -63,7 +63,7 @@ class DiagnosticsModelImpl : public DiagnosticsModel {
|
| // If one of the diagnostic steps returns false, we want to
|
| // mark the rest of them as "skipped" in the UMA stats.
|
| if (continue_running) {
|
| - continue_running = RunTest(tests_[i], observer, i);
|
| + continue_running = RunTest(tests_[i].get(), observer, i);
|
| ++tests_run_;
|
| } else {
|
| #if defined(OS_CHROMEOS) // Only collecting UMA stats on ChromeOS
|
| @@ -87,7 +87,7 @@ class DiagnosticsModelImpl : public DiagnosticsModel {
|
| // If one of the recovery steps returns false, we want to
|
| // mark the rest of them as "skipped" in the UMA stats.
|
| if (continue_running) {
|
| - continue_running = RunRecovery(tests_[i], observer, i);
|
| + continue_running = RunRecovery(tests_[i].get(), observer, i);
|
| } else {
|
| #if defined(OS_CHROMEOS) // Only collecting UMA stats on ChromeOS
|
| RecordUMARecoveryResult(
|
| @@ -110,9 +110,9 @@ class DiagnosticsModelImpl : public DiagnosticsModel {
|
| bool GetTestInfo(int id, const TestInfo** result) const override {
|
| DCHECK(id < DIAGNOSTICS_TEST_ID_COUNT);
|
| DCHECK(id >= 0);
|
| - for (size_t i = 0; i < tests_.size(); i++) {
|
| - if (tests_[i]->GetId() == id) {
|
| - *result = tests_[i];
|
| + for (const auto& test : tests_) {
|
| + if (test->GetId() == id) {
|
| + *result = test.get();
|
| return true;
|
| }
|
| }
|
| @@ -136,8 +136,7 @@ class DiagnosticsModelImpl : public DiagnosticsModel {
|
| return test->Recover(observer, this, index);
|
| }
|
|
|
| - typedef std::vector<DiagnosticsTest*> TestArray;
|
| - TestArray tests_;
|
| + std::vector<std::unique_ptr<DiagnosticsTest>> tests_;
|
| int tests_run_;
|
|
|
| private:
|
|
|