Index: src/platform-openbsd.cc |
diff --git a/src/platform-openbsd.cc b/src/platform-openbsd.cc |
index f4d366bbdf3f942d1c372c6b7f50d1589144118b..a53e30756d0ea4aae649c30972b18092381d3d63 100644 |
--- a/src/platform-openbsd.cc |
+++ b/src/platform-openbsd.cc |
@@ -838,7 +838,7 @@ class SignalSender : public Thread { |
ScopedLock lock(mutex_); |
SamplerRegistry::RemoveActiveSampler(sampler); |
if (SamplerRegistry::GetState() == SamplerRegistry::HAS_NO_SAMPLERS) { |
- RuntimeProfiler::StopRuntimeProfilerThreadBeforeShutdown(instance_); |
+ instance_->Join(); |
delete instance_; |
instance_ = NULL; |
RestoreSignalHandler(); |
@@ -855,9 +855,8 @@ class SignalSender : public Thread { |
if (state == SamplerRegistry::HAS_CPU_PROFILING_SAMPLERS) { |
if (!signal_handler_installed_) InstallSignalHandler(); |
SamplerRegistry::IterateActiveSamplers(&DoCpuProfile, this); |
- } else { |
- if (signal_handler_installed_) RestoreSignalHandler(); |
- if (RuntimeProfiler::WaitForSomeIsolateToEnterJS()) continue; |
+ } else if (signal_handler_installed_) { |
+ RestoreSignalHandler(); |
} |
Sleep(); // TODO(svenpanne) Figure out if OS:Sleep(interval_) is enough. |
} |