About Plugins: Fix that disabling plugin could disable too many others

Only disable plugin rows with disabled *Required* plugin dependencies.

Change 044eeacde5 introduces another
dependency type "Test", which are actually not dependencies in a strict
sense and even can be cyclic, which makes this bug especially obvious.

Change-Id: Ie504b4dd52670d838b712e88ae2e42123975b1d5
Reviewed-by: Orgad Shaneh <orgads@gmail.com>
Reviewed-by: hjk <hjk@theqtcompany.com>
This commit is contained in:
Eike Ziller
2015-04-24 12:03:08 +02:00
parent 681c5177f9
commit 3b545319b7

View File

@@ -343,6 +343,8 @@ static void queryDependendPlugins(PluginSpec *spec, QSet<PluginSpec *> *dependen
QHashIterator<PluginDependency, PluginSpec *> it(spec->dependencySpecs());
while (it.hasNext()) {
it.next();
if (it.key().type != PluginDependency::Required)
continue;
PluginSpec *dep = it.value();
if (!dependencies->contains(dep)) {
dependencies->insert(dep);