forked from qt-creator/qt-creator
Meson: Fix issues reported by Coverity
Mostly uninitialized members, and one use-after-free. Change-Id: Idfc9b0f39733e87e22a97d741cb261e1b09a8815 Reviewed-by: Alexis Jeandet <alexis.jeandet@member.fsf.org> Reviewed-by: Eike Ziller <eike.ziller@qt.io>
This commit is contained in:
committed by
Orgad Shaneh
parent
bdb4e3d793
commit
60dab96d39
@@ -163,9 +163,7 @@ public:
|
||||
QTC_ASSERT(column >= 0 && column < 2, return Qt::NoItemFlags);
|
||||
if (column == 0)
|
||||
return Qt::ItemIsEnabled | Qt::ItemIsSelectable;
|
||||
if (column == 1)
|
||||
return Qt::ItemIsEnabled | Qt::ItemIsSelectable | Qt::ItemIsEditable;
|
||||
return Qt::NoItemFlags;
|
||||
}
|
||||
BuildOption::Type type() const { return m_option->type(); }
|
||||
QString toolTip() const { return m_option->description(); }
|
||||
|
||||
@@ -117,7 +117,7 @@ private:
|
||||
bool fromMap(const QVariantMap &map) override;
|
||||
MesonBuildType m_buildType;
|
||||
ProjectExplorer::NamedWidget *createConfigWidget() final;
|
||||
MesonBuildSystem *m_buildSystem;
|
||||
MesonBuildSystem *m_buildSystem = nullptr;
|
||||
};
|
||||
|
||||
class MesonBuildConfigurationFactory final : public ProjectExplorer::BuildConfigurationFactory
|
||||
|
||||
@@ -110,7 +110,6 @@ MesonProjectParser::MesonProjectParser(const Core::Id &meson,
|
||||
ProjectExplorer::Project *project)
|
||||
: m_env{env}
|
||||
, m_meson{meson}
|
||||
, m_configuring{false}
|
||||
, m_projectName{project->displayName()}
|
||||
{
|
||||
connect(&m_process, &MesonProcess::finished, this, &MesonProjectParser::processFinished);
|
||||
|
||||
@@ -116,11 +116,11 @@ private:
|
||||
Utils::FilePath m_buildDir;
|
||||
Utils::FilePath m_srcDir;
|
||||
QFuture<ParserData *> m_parserFutureResult;
|
||||
bool m_configuring;
|
||||
bool m_configuring = false;
|
||||
IntroDataType m_introType;
|
||||
MesonInfoParser::Result m_parserResult;
|
||||
QStringList m_targetsNames;
|
||||
Utils::QtVersion m_qtVersion;
|
||||
Utils::QtVersion m_qtVersion = Utils::QtVersion::Unknown;
|
||||
std::unique_ptr<MesonProjectNode> m_rootNode; // <- project tree root node
|
||||
QString m_projectName;
|
||||
// maybe moving meson to build step could make this class simpler
|
||||
|
||||
@@ -56,7 +56,7 @@ private:
|
||||
QString defaultBuildTarget() const;
|
||||
QString m_commandArgs;
|
||||
QString m_targetName;
|
||||
NinjaParser *m_ninjaParser;
|
||||
NinjaParser *m_ninjaParser = nullptr;
|
||||
};
|
||||
|
||||
class MesonBuildStepFactory final : public ProjectExplorer::BuildStepFactory
|
||||
|
||||
@@ -28,6 +28,8 @@ namespace MesonProjectManager {
|
||||
namespace Internal {
|
||||
Settings::Settings(QObject *parent)
|
||||
: QObject(parent)
|
||||
, m_autorunMeson(true)
|
||||
, m_verboseNinja(true)
|
||||
{}
|
||||
} // namespace Internal
|
||||
} // namespace MesonProjectManager
|
||||
|
||||
@@ -62,8 +62,9 @@ void ToolsModel::addMesonTool()
|
||||
void ToolsModel::removeMesonTool(ToolTreeItem *item)
|
||||
{
|
||||
QTC_ASSERT(item, return );
|
||||
const Core::Id id = item->id();
|
||||
destroyItem(item);
|
||||
m_itemsToRemove.enqueue(item->id());
|
||||
m_itemsToRemove.enqueue(id);
|
||||
}
|
||||
|
||||
ToolTreeItem *ToolsModel::cloneMesonTool(ToolTreeItem *item)
|
||||
|
||||
Reference in New Issue
Block a user