| Index: src/platform-cygwin.cc
|
| diff --git a/src/platform-cygwin.cc b/src/platform-cygwin.cc
|
| index 67c389e794eca914d0ff9259e10903b5289dff25..23f88c9fe6c883c1615301436f500e87d5f2e465 100644
|
| --- a/src/platform-cygwin.cc
|
| +++ b/src/platform-cygwin.cc
|
| @@ -381,7 +381,8 @@ class Thread::PlatformData : public Malloced {
|
|
|
| Thread::Thread(const Options& options)
|
| : data_(new PlatformData()),
|
| - stack_size_(options.stack_size()) {
|
| + stack_size_(options.stack_size()),
|
| + start_semaphore_(NULL) {
|
| set_name(options.name());
|
| }
|
|
|
| @@ -398,7 +399,7 @@ static void* ThreadEntry(void* arg) {
|
| // one) so we initialize it here too.
|
| thread->data()->thread_ = pthread_self();
|
| ASSERT(thread->data()->thread_ != kNoThread);
|
| - thread->Run();
|
| + thread->NotifyStartedAndRun();
|
| return NULL;
|
| }
|
|
|
| @@ -639,7 +640,7 @@ class SamplerThread : public Thread {
|
| SamplerRegistry::AddActiveSampler(sampler);
|
| if (instance_ == NULL) {
|
| instance_ = new SamplerThread(sampler->interval());
|
| - instance_->Start();
|
| + instance_->StartSynchronously();
|
| } else {
|
| ASSERT(instance_->interval_ == sampler->interval());
|
| }
|
|
|