diff --git a/companion/src/mdichild.cpp b/companion/src/mdichild.cpp index f1654a530..f7461d149 100644 --- a/companion/src/mdichild.cpp +++ b/companion/src/mdichild.cpp @@ -144,13 +144,16 @@ void MdiChild::on_SimulateTxButton_clicked() { if (GetEepromInterface()->getSimulator()) { if (GetEepromInterface()->getCapability(SimulatorType)==1) { - xsimulatorDialog sd(this); - sd.loadParams(radioData); - sd.exec(); - } else { - simulatorDialog sd(this); - sd.loadParams(radioData); - sd.exec(); + xsimulatorDialog * sd = new xsimulatorDialog(this); + sd->loadParams(radioData); + sd->exec(); + delete sd; + } + else { + simulatorDialog * sd = new simulatorDialog(this); + sd->loadParams(radioData); + sd->exec(); + delete sd; } } else { diff --git a/companion/src/xsimulatordialog.cpp b/companion/src/xsimulatordialog.cpp index a048532f6..3c35f07fa 100644 --- a/companion/src/xsimulatordialog.cpp +++ b/companion/src/xsimulatordialog.cpp @@ -194,12 +194,12 @@ void xsimulatorDialog::onButtonPressed(int value) void xsimulatorDialog::onTimerEvent() { static unsigned int lcd_counter = 0; + if (!simulator->timer10ms()) { - QMessageBox::critical(this, "companion9x", QString(tr("Firmware %1 error: %2")).arg(txInterface->getName()).arg(simulator->getError())); timer->stop(); return; } - + getValues(); if (g_modelIdx >= 0) { diff --git a/radio/src/opentx.cpp b/radio/src/opentx.cpp index c5dd5adce..ee634a7d2 100644 --- a/radio/src/opentx.cpp +++ b/radio/src/opentx.cpp @@ -73,7 +73,7 @@ OS_TID btTaskId; OS_STK btStack[BT_STACK_SIZE]; #endif -#if defined(CPUARM) && defined(DEBUG) +#if defined(DEBUG) OS_TID debugTaskId; OS_STK debugStack[DEBUG_STACK_SIZE]; #endif diff --git a/radio/src/simpgmspace.cpp b/radio/src/simpgmspace.cpp index 48aecb6c7..10c7abd4a 100644 --- a/radio/src/simpgmspace.cpp +++ b/radio/src/simpgmspace.cpp @@ -345,6 +345,11 @@ void StartMainThread(bool tests) getcwd(simuSdDirectory, 1024); #endif +#if defined(CPUARM) + pthread_mutex_init(&mixerMutex, NULL); + pthread_mutex_init(&audioMutex, NULL); +#endif + main_thread_running = (tests ? 1 : 2); pthread_create(&main_thread_pid, NULL, &main_thread, NULL); }