This commit is contained in:
dforsi 2024-05-04 16:50:56 +00:00 committed by GitHub
commit 9a7f072846
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
17 changed files with 63 additions and 39 deletions

View File

@ -25,7 +25,8 @@ set(sdrangel_VERSION_SUFFIX "")
# SDRAngel cmake options
option(DEBUG_OUTPUT "Print debug messages" OFF)
option(SANITIZE_ADDRESS "Activate memory address sanitization" OFF)
option(SANITIZE_ADDRESS "Activate detection of uninitialized memory (AddressSanitizer)" OFF)
option(SANITIZE_MEMORY "Activate detection of leaked memory (LeakSanitizer)" OFF)
option(RX_SAMPLE_24BIT "Internal 24 bit Rx DSP" ON)
option(BUILD_SERVER "Build Server" ON)
option(BUILD_GUI "Build GUI" ON)

View File

@ -103,6 +103,7 @@ bool AFCGUI::handleMessage(const Message& message)
{
const AFC::MsgDeviceSetListsReport& report = (AFC::MsgDeviceSetListsReport&) message;
updateDeviceSetLists(report);
return true;
}
return false;

View File

@ -288,11 +288,10 @@ void GS232Controller::applySettings(const GS232ControllerSettings& settings, con
m_selectedPipe = m_availableChannelOrFeatureHandler.registerPipes(settings.m_source, {"target"});
}
GS232ControllerWorker::MsgConfigureGS232ControllerWorker *msg = GS232ControllerWorker::MsgConfigureGS232ControllerWorker::create(
settings, settingsKeys, force
);
if (m_worker) {
GS232ControllerWorker::MsgConfigureGS232ControllerWorker *msg = GS232ControllerWorker::MsgConfigureGS232ControllerWorker::create(
settings, settingsKeys, force
);
m_worker->getInputMessageQueue()->push(msg);
}

View File

@ -28,6 +28,7 @@
#include <QScreen>
#include <QSvgWidget>
#include <QTableWidgetItem>
#include <QtAlgorithms>
#ifdef QT_WEBENGINE_FOUND
#include <QtWebEngineWidgets/QWebEngineView>
@ -411,6 +412,16 @@ MapGUI::~MapGUI()
delete m_webServer;
}
delete m_giro;
qDeleteAll(*m_beacons);
delete m_beacons;
qDeleteAll(*m_navAids);
qDeleteAll(*m_airspaces);
qDeleteAll(*m_airportInfo);
qDeleteAll(*m_waypoints);
m_objectMapModel.removeAll();
m_imageMapModel.removeAll();
m_polygonMapModel.removeAll();
m_polylineMapModel.removeAll();
delete ui;
}

View File

@ -15,6 +15,7 @@
// along with this program. If not, see <http://www.gnu.org/licenses/>. //
///////////////////////////////////////////////////////////////////////////////////
#include <QtAlgorithms>
#include <QResource>
#include <QFile>
#include <QRegularExpression>
@ -41,6 +42,12 @@ WebServer::WebServer(quint16 &port, QObject* parent) :
m_mimeTypes.insert(".geojson", new MimeType("application/geo+json"));
}
WebServer::~WebServer()
{
qDeleteAll(m_substitutions);
qDeleteAll(m_mimeTypes);
}
void WebServer::incomingConnection(qintptr socket)
{
QTcpSocket* s = new QTcpSocket(this);

View File

@ -64,6 +64,7 @@ private:
public:
WebServer(quint16 &port, QObject* parent = 0);
~WebServer();
void incomingConnection(qintptr socket) override;
void addPathSubstitution(const QString &from, const QString &to);
void addSubstitution(QString path, QString from, QString to);

View File

@ -189,10 +189,10 @@ void PERTester::applySettings(const PERTesterSettings& settings, const QList<QSt
{
qDebug() << "PERTester::applySettings:" << settings.getDebugString(settingsKeys, force) << " force: " << force;
PERTesterWorker::MsgConfigurePERTesterWorker *msg = PERTesterWorker::MsgConfigurePERTesterWorker::create(
settings, settingsKeys, force
);
if (m_worker) {
PERTesterWorker::MsgConfigurePERTesterWorker *msg = PERTesterWorker::MsgConfigurePERTesterWorker::create(
settings, settingsKeys, force
);
m_worker->getInputMessageQueue()->push(msg);
}

View File

@ -208,11 +208,10 @@ void SatelliteTracker::applySettings(const SatelliteTrackerSettings& settings, c
tlesChanged = true;
}
SatelliteTrackerWorker::MsgConfigureSatelliteTrackerWorker *msg = SatelliteTrackerWorker::MsgConfigureSatelliteTrackerWorker::create(
settings, settingsKeys, force
);
if (m_worker) {
SatelliteTrackerWorker::MsgConfigureSatelliteTrackerWorker *msg = SatelliteTrackerWorker::MsgConfigureSatelliteTrackerWorker::create(
settings, settingsKeys, force
);
m_worker->getInputMessageQueue()->push(msg);
}

View File

@ -41,6 +41,12 @@ WebServer::WebServer(quint16 &port, QObject* parent) :
m_mimeTypes.insert(".geojson", new MimeType("application/geo+json"));
}
WebServer::~WebServer()
{
qDeleteAll(m_substitutions);
qDeleteAll(m_mimeTypes);
}
void WebServer::incomingConnection(qintptr socket)
{
QTcpSocket* s = new QTcpSocket(this);

View File

@ -64,6 +64,7 @@ private:
public:
WebServer(quint16 &port, QObject* parent = 0);
~WebServer();
void incomingConnection(qintptr socket) override;
void addPathSubstitution(const QString &from, const QString &to);
void addSubstitution(QString path, QString from, QString to);

View File

@ -163,25 +163,25 @@ bool StarTracker::handleMessage(const Message& cmd)
}
else if (MsgSetSolarFlux::match(cmd))
{
MsgSetSolarFlux& msg = (MsgSetSolarFlux&) cmd;
m_solarFlux = msg.getFlux();
if (m_worker) {
MsgSetSolarFlux& msg = (MsgSetSolarFlux&) cmd;
m_solarFlux = msg.getFlux();
m_worker->getInputMessageQueue()->push(new MsgSetSolarFlux(msg));
}
return true;
}
else if (MainCore::MsgStarTrackerDisplaySettings::match(cmd))
{
MainCore::MsgStarTrackerDisplaySettings& settings = (MainCore::MsgStarTrackerDisplaySettings&) cmd;
if (m_guiMessageQueue) {
MainCore::MsgStarTrackerDisplaySettings& settings = (MainCore::MsgStarTrackerDisplaySettings&) cmd;
m_guiMessageQueue->push(new MainCore::MsgStarTrackerDisplaySettings(settings));
}
return true;
}
else if (MainCore::MsgStarTrackerDisplayLoSSettings::match(cmd))
{
MainCore::MsgStarTrackerDisplayLoSSettings& settings = (MainCore::MsgStarTrackerDisplayLoSSettings&) cmd;
if (m_guiMessageQueue) {
MainCore::MsgStarTrackerDisplayLoSSettings& settings = (MainCore::MsgStarTrackerDisplayLoSSettings&) cmd;
m_guiMessageQueue->push(new MainCore::MsgStarTrackerDisplayLoSSettings(settings));
}
return true;
@ -246,10 +246,10 @@ void StarTracker::applySettings(const StarTrackerSettings& settings, const QList
}
}
StarTrackerWorker::MsgConfigureStarTrackerWorker *msg = StarTrackerWorker::MsgConfigureStarTrackerWorker::create(
settings, settingsKeys, force
);
if (m_worker) {
StarTrackerWorker::MsgConfigureStarTrackerWorker *msg = StarTrackerWorker::MsgConfigureStarTrackerWorker::create(
settings, settingsKeys, force
);
m_worker->getInputMessageQueue()->push(msg);
}

View File

@ -40,8 +40,8 @@ QByteArray DeviceUserArgs::serialize() const
{
SimpleSerializer s(1);
QByteArray data;
QDataStream *stream = new QDataStream(&data, QIODevice::WriteOnly);
*stream << m_argsByDevice;
QDataStream stream(&data, QIODevice::WriteOnly);
stream << m_argsByDevice;
s.writeBlob(1, data);
return s.final();
}

View File

@ -209,6 +209,7 @@ void MainCore::removeLastFeatureSet()
FeatureSet *featureSet = m_featureSets.back();
m_featureSetsMap.remove(featureSet);
m_featureSets.pop_back();
delete featureSet;
}
}
@ -227,6 +228,7 @@ void MainCore::removeLastDeviceSet()
DeviceSet *deviceSet = m_deviceSets.back();
m_deviceSetsMap.remove(deviceSet);
m_deviceSets.pop_back();
delete deviceSet;
}
}

View File

@ -21,6 +21,7 @@
#include <algorithm>
#include "qalgorithms.h"
#include "settings/mainsettings.h"
#include "commands/command.h"
#include "audio/audiodevicemanager.h"
@ -34,24 +35,11 @@ MainSettings::MainSettings() :
MainSettings::~MainSettings()
{
for (int i = 0; i < m_presets.count(); ++i)
{
delete m_presets[i];
}
for (int i = 0; i < m_commands.count(); ++i)
{
delete m_commands[i];
}
for (int i = 0; i < m_featureSetPresets.count(); ++i)
{
delete m_featureSetPresets[i];
}
for (int i = 0; i < m_pluginPresets.count(); ++i)
{
delete m_pluginPresets[i];
}
qDeleteAll(m_presets);
qDeleteAll(m_commands);
qDeleteAll(m_featureSetPresets);
qDeleteAll(m_pluginPresets);
qDeleteAll(m_configurations);
}
QString MainSettings::getFileLocation() const

View File

@ -5560,3 +5560,8 @@ Airline::Init::Init()
s += 4;
}
}
Airline::Init::~Init()
{
qDeleteAll(m_icaoHash);
}

View File

@ -55,6 +55,7 @@ private:
friend struct Init;
struct Init {
Init();
~Init();
static const char *m_airlines[];
};
static Init m_init;

View File

@ -514,6 +514,8 @@ void GLShaderSpectrogram::drawSurface(SpectrumSettings::SpectrogramStyle style,
void GLShaderSpectrogram::cleanup()
{
delete m_vao;
m_vao = nullptr;
delete m_programShaded;
m_programShaded = nullptr;
delete m_programSimple;