summaryrefslogtreecommitdiffstats
path: root/src/libs/installer
diff options
context:
space:
mode:
authorkh <karsten.heimrich@theqtcompany.com>2015-04-10 11:14:10 +0200
committerKarsten Heimrich <karsten.heimrich@theqtcompany.com>2015-04-10 10:14:59 +0000
commitb9d855d8cf994e01d1e2005d7fe5e75c7b65a79f (patch)
tree04857b176d5890daf6e834b1eeee2f00c688da32 /src/libs/installer
parent8d060e69105f7c5705ba5c3a600c948467118f5e (diff)
Fix possible null pointer access.
Change-Id: I2cb1c8b70d41c764e0f9e47637b951c480ebcb5c Reviewed-by: Jarek Kobus <jaroslaw.kobus@theqtcompany.com>
Diffstat (limited to 'src/libs/installer')
-rw-r--r--src/libs/installer/componentchecker.cpp9
1 files changed, 7 insertions, 2 deletions
diff --git a/src/libs/installer/componentchecker.cpp b/src/libs/installer/componentchecker.cpp
index 949ae00cf..ee13664ee 100644
--- a/src/libs/installer/componentchecker.cpp
+++ b/src/libs/installer/componentchecker.cpp
@@ -42,8 +42,13 @@ namespace QInstaller {
QStringList ComponentChecker::checkComponent(Component *component)
{
- PackageManagerCore *core = component->packageManagerCore();
QStringList checkResult;
+ if (!component)
+ return checkResult;
+
+ PackageManagerCore *core = component->packageManagerCore();
+ if (!core)
+ return checkResult;
const bool defaultPropertyScriptValue = component->variables().value(scDefault).compare(scScript, Qt::CaseInsensitive) == 0;
const bool defaultPropertyValue = component->variables().value(scDefault).compare(scTrue, Qt::CaseInsensitive) == 0;
@@ -74,7 +79,7 @@ QStringList ComponentChecker::checkComponent(Component *component)
foreach (const QString &dependency, dependencies) {
Component *dependencyComponent = PackageManagerCore::componentByName(
dependency, allComponents);
- if (autoDependencies.contains(dependencyComponent->name())) {
+ if (dependencyComponent && autoDependencies.contains(dependencyComponent->name())) {
checkResult << QString::fromLatin1("Component %1 specifies both dependency "
"and auto dependency on component %2. The dependency might be superfluous.")
.arg(component->name(), dependencyComponent->name());