Fix memory leak for probableWALfiles in db_impl.cc

Summary: using unique_ptr to have automatic delete for probableWALfiles in db_impl.cc

Test Plan: make

Reviewers: sheki, dhruba

Reviewed By: sheki

CC: leveldb

Differential Revision: https://reviews.facebook.net/D10083
This commit is contained in:
Mayank Agarwal
2013-04-09 13:21:11 -07:00
parent db8b404120
commit 94d86b25a9
3 changed files with 12 additions and 16 deletions

View File

@@ -894,8 +894,9 @@ Status DBImpl::GetUpdatesSince(SequenceNumber seq,
}
// std::shared_ptr would have been useful here.
std::vector<LogFile>* probableWALFiles = new std::vector<LogFile>();
s = FindProbableWALFiles(&walFiles, probableWALFiles, seq);
std::unique_ptr<std::vector<LogFile>> probableWALFiles(
new std::vector<LogFile>());
s = FindProbableWALFiles(&walFiles, probableWALFiles.get(), seq);
if (!s.ok()) {
return s;
}
@@ -904,7 +905,7 @@ Status DBImpl::GetUpdatesSince(SequenceNumber seq,
&options_,
storage_options_,
seq,
probableWALFiles,
std::move(probableWALFiles),
&last_flushed_sequence_));
iter->get()->Next();
return iter->get()->status();