Fix a few bugs in profilers.

* Legacy was launching before the profiler.
* Some clarity changes.
* Report problem with empty strings as profiler paths.
This commit is contained in:
Petr Mrázek
2014-02-16 00:10:45 +01:00
parent 8219dbf612
commit 7ceb2cacb1
6 changed files with 73 additions and 24 deletions

View File

@ -1239,7 +1239,7 @@ void MainWindow::launchInstance(BaseInstance *instance, AuthSessionPtr session,
connect(console, SIGNAL(isClosing()), this, SLOT(instanceEnded()));
proc->setLogin(session);
proc->launch();
proc->arm();
if (profiler)
{
@ -1247,6 +1247,7 @@ void MainWindow::launchInstance(BaseInstance *instance, AuthSessionPtr session,
if (!profiler->check(&error))
{
QMessageBox::critical(this, tr("Error"), tr("Couldn't start profiler: %1").arg(error));
proc->abort();
return;
}
BaseProfiler *profilerInstance = profiler->createProfiler(instance, this);
@ -1267,14 +1268,14 @@ void MainWindow::launchInstance(BaseInstance *instance, AuthSessionPtr session,
msg.setIcon(QMessageBox::Information);
msg.addButton(tr("Launch"), QMessageBox::AcceptRole);
msg.exec();
proc->write("launch\n");
proc->launch();
});
profilerInstance->beginProfiling(proc);
dialog.exec();
}
else
{
proc->write("launch\n");
proc->launch();
}
}

View File

@ -528,14 +528,15 @@ void SettingsDialog::on_jprofilerPathBtn_clicked()
}
void SettingsDialog::on_jprofilerCheckBtn_clicked()
{
if (!ui->jprofilerPathEdit->text().isEmpty())
QString error;
if (!MMC->profilers()["jprofiler"]->check(ui->jprofilerPathEdit->text(), &error))
{
QString error;
if (!MMC->profilers()["jprofiler"]->check(ui->jprofilerPathEdit->text(), &error))
{
QMessageBox::critical(this, tr("Error"),
tr("Error while checking JProfiler install:\n%1").arg(error));
}
QMessageBox::critical(this, tr("Error"),
tr("Error while checking JProfiler install:\n%1").arg(error));
}
else
{
QMessageBox::information(this, tr("OK"), tr("JProfiler setup seems to be OK"));
}
}
@ -553,13 +554,14 @@ void SettingsDialog::on_jvisualvmPathBtn_clicked()
}
void SettingsDialog::on_jvisualvmCheckBtn_clicked()
{
if (!ui->jvisualvmPathEdit->text().isEmpty())
QString error;
if (!MMC->profilers()["jvisualvm"]->check(ui->jvisualvmPathEdit->text(), &error))
{
QString error;
if (!MMC->profilers()["jvisualvm"]->check(ui->jvisualvmPathEdit->text(), &error))
{
QMessageBox::critical(this, tr("Error"),
tr("Error while checking JVisualVM install:\n%1").arg(error));
}
QMessageBox::critical(this, tr("Error"),
tr("Error while checking JVisualVM install:\n%1").arg(error));
}
else
{
QMessageBox::information(this, tr("OK"), tr("JVisualVM setup seems to be OK"));
}
}