Bug 1103094 - Start profiling subprocesses if the parent process is already profiling. r=BenWa

This commit is contained in:
Mike Conley
2015-08-11 14:26:27 -04:00
parent 6c9d302203
commit 97fc9f775a
11 changed files with 86 additions and 38 deletions

View File

@@ -2524,22 +2524,20 @@ PluginModuleChild::ProcessNativeEvents() {
#endif
bool
PluginModuleChild::RecvStartProfiler(const uint32_t& aEntries,
const double& aInterval,
nsTArray<nsCString>&& aFeatures,
nsTArray<nsCString>&& aThreadNameFilters)
PluginModuleChild::RecvStartProfiler(const ProfilerInitParams& params)
{
nsTArray<const char*> featureArray;
for (size_t i = 0; i < aFeatures.Length(); ++i) {
featureArray.AppendElement(aFeatures[i].get());
for (size_t i = 0; i < params.features().Length(); ++i) {
featureArray.AppendElement(params.features()[i].get());
}
nsTArray<const char*> threadNameFilterArray;
for (size_t i = 0; i < aThreadNameFilters.Length(); ++i) {
threadNameFilterArray.AppendElement(aThreadNameFilters[i].get());
for (size_t i = 0; i < params.threadFilters().Length(); ++i) {
threadNameFilterArray.AppendElement(params.threadFilters()[i].get());
}
profiler_start(aEntries, aInterval, featureArray.Elements(), featureArray.Length(),
profiler_start(params.entries(), params.interval(),
featureArray.Elements(), featureArray.Length(),
threadNameFilterArray.Elements(), threadNameFilterArray.Length());
return true;