ProjectExplorer: Do not call setup() or fix() for irrelevant kit aspects

This check was already present for validate(), but missing for the other
two functions.

Fixes: QTCREATORBUG-31408
Change-Id: Icc70a9e2fe4b9576a7a25830fdd2300380174fa1
Reviewed-by: David Schulz <david.schulz@qt.io>
This commit is contained in:
Christian Kandeler
2024-08-20 12:24:46 +02:00
parent 9d06f04b7d
commit e9b160c025

View File

@@ -255,16 +255,20 @@ Tasks Kit::validate() const
void Kit::fix() void Kit::fix()
{ {
KitGuard g(this); KitGuard g(this);
for (KitAspectFactory *factory : KitManager::kitAspectFactories()) for (KitAspectFactory *factory : KitManager::kitAspectFactories()) {
factory->fix(this); if (isAspectRelevant(factory->id()))
factory->fix(this);
}
} }
void Kit::setup() void Kit::setup()
{ {
KitGuard g(this); KitGuard g(this);
const QList<KitAspectFactory *> aspects = KitManager::kitAspectFactories(); const QList<KitAspectFactory *> aspects = KitManager::kitAspectFactories();
for (KitAspectFactory * const factory : aspects) for (KitAspectFactory * const factory : aspects) {
factory->setup(this); if (isAspectRelevant(factory->id()))
factory->setup(this);
}
} }
void Kit::upgrade() void Kit::upgrade()