Use scoped_ptr for ThreadWrapper::CreateThread.

BUG=
R=henrika@webrtc.org, pbos@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/45799004

Cr-Commit-Position: refs/heads/master@{#8794}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8794 4adac7df-926f-26a2-2b94-8c16560cd09d
diff --git a/webrtc/system_wrappers/source/data_log.cc b/webrtc/system_wrappers/source/data_log.cc
index 41da872..7c2a91b 100644
--- a/webrtc/system_wrappers/source/data_log.cc
+++ b/webrtc/system_wrappers/source/data_log.cc
@@ -19,7 +19,6 @@
 #include "webrtc/system_wrappers/interface/event_wrapper.h"
 #include "webrtc/system_wrappers/interface/file_wrapper.h"
 #include "webrtc/system_wrappers/interface/rw_lock_wrapper.h"
-#include "webrtc/system_wrappers/interface/thread_wrapper.h"
 
 namespace webrtc {
 
@@ -322,14 +321,12 @@
   : counter_(1),
     tables_(),
     flush_event_(EventWrapper::Create()),
-    file_writer_thread_(NULL),
     tables_lock_(RWLockWrapper::CreateRWLock()) {
 }
 
 DataLogImpl::~DataLogImpl() {
   StopThread();
   Flush();  // Write any remaining rows
-  delete file_writer_thread_;
   delete flush_event_;
   for (TableMap::iterator it = tables_.begin(); it != tables_.end();) {
     delete static_cast<LogTable*>(it->second);
@@ -356,8 +353,6 @@
                           instance_,
                           kHighestPriority,
                           "DataLog");
-  if (file_writer_thread_ == NULL)
-    return -1;
   bool success = file_writer_thread_->Start();
   if (!success)
     return -1;
@@ -413,7 +408,7 @@
   if (tables_.count(table_name) == 0)
     return -1;
   tables_[table_name]->NextRow();
-  if (file_writer_thread_ == NULL) {
+  if (!file_writer_thread_) {
     // Write every row to file as they get complete.
     tables_[table_name]->Flush();
   } else {
@@ -442,11 +437,9 @@
 }
 
 void DataLogImpl::StopThread() {
-  if (file_writer_thread_ != NULL) {
+  if (file_writer_thread_) {
     flush_event_->Set();
-    // Call Stop() repeatedly, waiting for the Flush() call in Process() to
-    // finish.
-    while (!file_writer_thread_->Stop()) continue;
+    file_writer_thread_->Stop();
   }
 }