From 222756e7ac2b1c3005149a4591a9247862f2b861 Mon Sep 17 00:00:00 2001 From: Klaus Basan Date: Fri, 17 Jan 2014 19:27:15 +0100 Subject: [PATCH] Fixed 2 bugs only obvious when running with Core/DBus * init of m_enabled in modulator missing, crashed DBus marshalling * Need to check boundaries of voice rooms in GUI for empty list --- samples/blackgui/mainwindow_aircraft.cpp | 15 +++++++++------ src/blackmisc/aviomodulator.h | 4 ++-- 2 files changed, 11 insertions(+), 8 deletions(-) diff --git a/samples/blackgui/mainwindow_aircraft.cpp b/samples/blackgui/mainwindow_aircraft.cpp index 68ada682e..c52d888b4 100644 --- a/samples/blackgui/mainwindow_aircraft.cpp +++ b/samples/blackgui/mainwindow_aircraft.cpp @@ -42,12 +42,15 @@ bool MainWindow::reloadOwnAircraft() if (this->m_contextVoiceAvailable) { CVoiceRoomList selectedRooms = this->m_contextNetwork->getSelectedVoiceRooms(); - this->m_voiceRoomCom1 = this->ui->cb_CockpitVoiceRoom1Override->isChecked() ? - this->ui->le_CockpitVoiceRoomCom1->text().trimmed() : - selectedRooms[0]; - this->m_voiceRoomCom2 = this->ui->cb_CockpitVoiceRoom2Override->isChecked() ? - this->ui->le_CockpitVoiceRoomCom2->text().trimmed() : - selectedRooms[1]; + if (selectedRooms.size() == 2) + { + this->m_voiceRoomCom1 = this->ui->cb_CockpitVoiceRoom1Override->isChecked() ? + this->ui->le_CockpitVoiceRoomCom1->text().trimmed() : + selectedRooms[0]; + this->m_voiceRoomCom2 = this->ui->cb_CockpitVoiceRoom2Override->isChecked() ? + this->ui->le_CockpitVoiceRoomCom2->text().trimmed() : + selectedRooms[1]; + } } // diff --git a/src/blackmisc/aviomodulator.h b/src/blackmisc/aviomodulator.h index f153a0f60..19a976ce4 100644 --- a/src/blackmisc/aviomodulator.h +++ b/src/blackmisc/aviomodulator.h @@ -37,7 +37,7 @@ namespace BlackMisc * \brief Default constructor */ CModulator() : - CAvionicsBase("default"), m_volumeInput(0), m_volumeOutput(0), m_digits(2) {} + CAvionicsBase("default"), m_volumeInput(0), m_volumeOutput(0), m_enabled(true), m_digits(2) {} /*! * \brief Constructor @@ -47,7 +47,7 @@ namespace BlackMisc * \param digits */ CModulator(const QString &name, const BlackMisc::PhysicalQuantities::CFrequency &activeFrequency, const BlackMisc::PhysicalQuantities::CFrequency &standbyFrequency, int digits) : - CAvionicsBase(name), m_frequencyActive(activeFrequency), m_frequencyStandby(standbyFrequency), m_volumeInput(0), m_volumeOutput(0), m_digits(digits), m_enabled(true) {} + CAvionicsBase(name), m_frequencyActive(activeFrequency), m_frequencyStandby(standbyFrequency), m_volumeInput(0), m_volumeOutput(0), m_enabled(true), m_digits(digits) {} /*! * \brief String for converter