| Index: src/platform-solaris.cc
|
| diff --git a/src/platform-solaris.cc b/src/platform-solaris.cc
|
| index d6fa4159d14511fae4f3f782ab918af1a629e1e5..36d89e6d12a8c750c9cda23f5d7426adc1ef95da 100644
|
| --- a/src/platform-solaris.cc
|
| +++ b/src/platform-solaris.cc
|
| @@ -669,9 +669,8 @@ static void ProfilerSignalHandler(int signal, siginfo_t* info, void* context) {
|
| Sampler* sampler = isolate->logger()->sampler();
|
| if (sampler == NULL || !sampler->IsActive()) return;
|
|
|
| - TickSample sample_obj;
|
| - TickSample* sample = CpuProfiler::TickSampleEvent(isolate);
|
| - if (sample == NULL) sample = &sample_obj;
|
| + TickSample* sample = CpuProfiler::StartTickSampleEvent(isolate);
|
| + if (sample == NULL) return;
|
|
|
| // Extracting the sample from the context is extremely machine dependent.
|
| ucontext_t* ucontext = reinterpret_cast<ucontext_t*>(context);
|
| @@ -684,6 +683,7 @@ static void ProfilerSignalHandler(int signal, siginfo_t* info, void* context) {
|
|
|
| sampler->SampleStack(sample);
|
| sampler->Tick(sample);
|
| + CpuProfiler::FinishTickSampleEvent(isolate);
|
| }
|
|
|
| class Sampler::PlatformData : public Malloced {
|
|
|