Rework after code reading
* Fix possible segfault in `SubPluginFeatures::displayName` * Minor fixes
This commit is contained in:
@@ -202,19 +202,19 @@ public:
|
||||
|
||||
virtual QString additionalFileExtensions(const Key&) const
|
||||
{
|
||||
return nullptr;
|
||||
return QString();
|
||||
}
|
||||
|
||||
virtual QString displayName(const Key& k) const
|
||||
{
|
||||
return k.isValid()
|
||||
? k.desc->displayName
|
||||
: k.name.toUtf8().data();
|
||||
: k.name;
|
||||
}
|
||||
|
||||
virtual QString description(const Key& k) const
|
||||
{
|
||||
return k.isValid() ? k.desc->description : "";
|
||||
return k.isValid() ? k.desc->description : QString();
|
||||
}
|
||||
|
||||
virtual const PixmapLoader* logo(const Key& k) const
|
||||
|
||||
@@ -127,8 +127,8 @@ QString Plugin::Descriptor::SubPluginFeatures::Key::additionalFileExtensions() c
|
||||
return desc->subPluginFeatures
|
||||
// get from sub plugin
|
||||
? desc->subPluginFeatures->additionalFileExtensions(*this)
|
||||
// get from plugin
|
||||
: nullptr;
|
||||
// no sub plugin, so no *additional* file extensions
|
||||
: QString();
|
||||
}
|
||||
|
||||
|
||||
|
||||
@@ -180,10 +180,6 @@ void PluginFactory::discoverPlugins()
|
||||
continue;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
//qDebug() << "Ignoring" << file.absoluteFilePath() << "(no lmms_plugin_main())";
|
||||
}
|
||||
|
||||
if(pluginDescriptor)
|
||||
{
|
||||
@@ -199,15 +195,18 @@ void PluginFactory::discoverPlugins()
|
||||
const Plugin::Descriptor::SubPluginFeatures::Key* key = nullptr)
|
||||
{
|
||||
if(!supportedFileTypes.isNull())
|
||||
for (const QString& ext : supportedFileTypes.split(','))
|
||||
{
|
||||
//qDebug() << "Plugin " << info.name() << "supports" << ext;
|
||||
PluginInfoAndKey infoAndKey;
|
||||
infoAndKey.info = info;
|
||||
infoAndKey.key = key
|
||||
? *key
|
||||
: Plugin::Descriptor::SubPluginFeatures::Key();
|
||||
m_pluginByExt.insert(ext, infoAndKey);
|
||||
for (const QString& ext : supportedFileTypes.split(','))
|
||||
{
|
||||
//qDebug() << "Plugin " << info.name()
|
||||
// << "supports" << ext;
|
||||
PluginInfoAndKey infoAndKey;
|
||||
infoAndKey.info = info;
|
||||
infoAndKey.key = key
|
||||
? *key
|
||||
: Plugin::Descriptor::SubPluginFeatures::Key();
|
||||
m_pluginByExt.insert(ext, infoAndKey);
|
||||
}
|
||||
}
|
||||
};
|
||||
|
||||
|
||||
Reference in New Issue
Block a user