delete LogDestination::sinks_ at DeleteLogDestinations().
authorFumitoshi Ukai <ukai@google.com>
Fri, 27 Mar 2015 08:23:20 +0000 (17:23 +0900)
committerFumitoshi Ukai <ukai@google.com>
Fri, 27 Mar 2015 08:23:20 +0000 (17:23 +0900)
fixes #8 AddLogSink memory leak

src/logging.cc

index 5543e3af494286a0288f13e9c55f7ec98afd2da5..091b0db233ee4ba2056be0d4786f04ff5b34bf41 100644 (file)
@@ -817,6 +817,11 @@ void LogDestination::DeleteLogDestinations() {
     delete log_destinations_[severity];
     log_destinations_[severity] = NULL;
   }
+  MutexLock l(&sink_mutex_);
+  for (size_t i = 0; i < sinks_->size(); ++i) {
+    delete (*sinks_)[i];
+  }
+  delete sinks_;
 }
 
 namespace {