1
0
mirror of https://github.com/f4exb/sdrangel.git synced 2025-07-01 16:35:22 -04:00

Deep redesign: corrections after Valgrind memcheck

This commit is contained in:
f4exb 2015-08-29 03:09:44 +02:00
parent 43a783aceb
commit cebedf1460
5 changed files with 23 additions and 5 deletions

2
.gitignore vendored
View File

@ -1,6 +1,8 @@
CMakeLists.txt.user* CMakeLists.txt.user*
build/* build/*
qtbuild/*
LOCAL/* LOCAL/*
sdrangelove.supp
.cproject .cproject
.project .project
.settings/ .settings/

View File

@ -42,6 +42,7 @@ BladerfGui::BladerfGui(PluginAPI* pluginAPI, QWidget* parent) :
BladerfGui::~BladerfGui() BladerfGui::~BladerfGui()
{ {
delete m_sampleSource; // Valgrind memcheck
delete ui; delete ui;
} }

View File

@ -32,7 +32,8 @@ const PluginDescriptor BlderfPlugin::m_pluginDescriptor = {
}; };
BlderfPlugin::BlderfPlugin(QObject* parent) : BlderfPlugin::BlderfPlugin(QObject* parent) :
QObject(parent) QObject(parent),
m_pluginAPI(0)
{ {
} }
@ -51,6 +52,7 @@ PluginInterface::SampleSourceDevices BlderfPlugin::enumSampleSources()
{ {
SampleSourceDevices result; SampleSourceDevices result;
struct bladerf_devinfo *devinfo; struct bladerf_devinfo *devinfo;
int count = bladerf_get_device_list(&devinfo); int count = bladerf_get_device_list(&devinfo);
for(int i = 0; i < count; i++) for(int i = 0; i < count; i++)
@ -61,16 +63,27 @@ PluginInterface::SampleSourceDevices BlderfPlugin::enumSampleSources()
s.writeString(2, devinfo[i].serial); s.writeString(2, devinfo[i].serial);
result.append(SampleSourceDevice(displayedName, "org.osmocom.sdr.samplesource.bladerf", s.final())); result.append(SampleSourceDevice(displayedName, "org.osmocom.sdr.samplesource.bladerf", s.final()));
} }
bladerf_free_device_list(devinfo); // Valgrind memcheck
return result; return result;
} }
PluginGUI* BlderfPlugin::createSampleSourcePluginGUI(const QString& sourceName, const QByteArray& address) PluginGUI* BlderfPlugin::createSampleSourcePluginGUI(const QString& sourceName, const QByteArray& address)
{ {
if(sourceName == "org.osmocom.sdr.samplesource.bladerf") { if (!m_pluginAPI)
{
return 0;
}
if(sourceName == "org.osmocom.sdr.samplesource.bladerf")
{
BladerfGui* gui = new BladerfGui(m_pluginAPI); BladerfGui* gui = new BladerfGui(m_pluginAPI);
m_pluginAPI->setInputGUI(gui); m_pluginAPI->setInputGUI(gui);
return gui; return gui;
} else { }
return NULL; else
{
return 0;
} }
} }

View File

@ -43,6 +43,7 @@ ThreadedSampleSink::ThreadedSampleSink(SampleSink* sampleSink, QObject *parent)
ThreadedSampleSink::~ThreadedSampleSink() ThreadedSampleSink::~ThreadedSampleSink()
{ {
delete m_threadedSampleFifo; // Valgrind memcheck
delete m_thread; delete m_thread;
} }

View File

@ -347,8 +347,9 @@ void PluginManager::loadPlugins(const QDir& dir)
else else
{ {
loader->unload(); loader->unload();
delete loader;
} }
delete loader; // Valgrind memcheck
} }
} }