| Index: src/platform-freebsd.cc
|
| diff --git a/src/platform-freebsd.cc b/src/platform-freebsd.cc
|
| index 14f7171a3cf7f33fb349bff7a65ad3d978ed117e..8c2e397ebad71ce955ca04a4c2777a9839bd909f 100644
|
| --- a/src/platform-freebsd.cc
|
| +++ b/src/platform-freebsd.cc
|
| @@ -500,7 +500,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());
|
| }
|
|
|
| @@ -517,7 +518,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;
|
| }
|
|
|
| @@ -765,7 +766,7 @@ class SignalSender : public Thread {
|
|
|
| // Start a thread that sends SIGPROF signal to VM threads.
|
| instance_ = new SignalSender(sampler->interval());
|
| - instance_->Start();
|
| + instance_->StartSynchronously();
|
| } else {
|
| ASSERT(instance_->interval_ == sampler->interval());
|
| }
|
|
|