| Index: base/metrics/sparse_histogram.cc
|
| diff --git a/base/metrics/sparse_histogram.cc b/base/metrics/sparse_histogram.cc
|
| index 5653456a29fb552470871f8611cb6337ec65bc50..afe677712dcffd74e1b4ceefdf5e91e48cab645e 100644
|
| --- a/base/metrics/sparse_histogram.cc
|
| +++ b/base/metrics/sparse_histogram.cc
|
| @@ -25,10 +25,10 @@ HistogramBase* SparseHistogram::FactoryGet(const std::string& name,
|
|
|
| if (!histogram) {
|
| // To avoid racy destruction at shutdown, the following will be leaked.
|
| - HistogramBase* tentative_histogram = new SparseHistogram(name);
|
| + scoped_ptr<HistogramBase> tentative_histogram(new SparseHistogram(name));
|
| tentative_histogram->SetFlags(flags);
|
| - histogram =
|
| - StatisticsRecorder::RegisterOrDeleteDuplicate(tentative_histogram);
|
| + histogram = StatisticsRecorder::RegisterOrDeleteDuplicate(
|
| + std::move(tentative_histogram));
|
| }
|
| DCHECK_EQ(SPARSE_HISTOGRAM, histogram->GetHistogramType());
|
| return histogram;
|
|
|