Index: content/gpu/in_process_gpu_thread.cc |
diff --git a/content/gpu/in_process_gpu_thread.cc b/content/gpu/in_process_gpu_thread.cc |
index bd9ef94fcf87a0a2cc6ebf01db857116ae1fc79c..10d0702e014b017bf72af5df0b9541a426fa12e7 100644 |
--- a/content/gpu/in_process_gpu_thread.cc |
+++ b/content/gpu/in_process_gpu_thread.cc |
@@ -4,6 +4,7 @@ |
#include "content/gpu/in_process_gpu_thread.h" |
+#include "base/time/time.h" |
#include "content/common/gpu/gpu_memory_buffer_factory.h" |
#include "content/gpu/gpu_child_thread.h" |
#include "content/gpu/gpu_process.h" |
@@ -34,10 +35,17 @@ InProcessGpuThread::~InProcessGpuThread() { |
void InProcessGpuThread::Init() { |
gpu_process_ = new GpuProcess(); |
+ |
// The process object takes ownership of the thread object, so do not |
// save and delete the pointer. |
- gpu_process_->set_main_thread(new GpuChildThread( |
- params_, gpu_memory_buffer_factory_.get(), sync_point_manager_override_)); |
+ GpuChildThread* child_thread = new GpuChildThread( |
+ params_, gpu_memory_buffer_factory_.get(), sync_point_manager_override_); |
+ |
+ // Since we are in the browser process, use the thread start time as the |
+ // process start time. |
+ child_thread->Init(base::Time::Now()); |
+ |
+ gpu_process_->set_main_thread(child_thread); |
} |
void InProcessGpuThread::CleanUp() { |