From d79c94e60fb84cbc8ccf00e237926c088e77970e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Lukas=20Br=C3=BCbach?= Date: Thu, 25 Sep 2025 11:36:05 +0200 Subject: [PATCH] Clean up refreshCachedReverseRelatedCards. Took 2 minutes Took 6 seconds --- cockatrice/src/database/card_database.cpp | 23 ++++++++--------------- 1 file changed, 8 insertions(+), 15 deletions(-) diff --git a/cockatrice/src/database/card_database.cpp b/cockatrice/src/database/card_database.cpp index 06943cb13..757d2362e 100644 --- a/cockatrice/src/database/card_database.cpp +++ b/cockatrice/src/database/card_database.cpp @@ -148,24 +148,17 @@ QStringList CardDatabase::collectCustomDatabasePaths() void CardDatabase::refreshCachedReverseRelatedCards() { - for (const CardInfoPtr &card : cards) + for (const auto &card : cards) { card->resetReverseRelatedCards2Me(); + } - for (const CardInfoPtr &card : cards) { - if (card->getReverseRelatedCards().isEmpty()) { - continue; - } - - for (CardRelation *cardRelation : card->getReverseRelatedCards()) { - const QString &targetCard = cardRelation->getName(); - if (!cards.contains(targetCard)) { - continue; + for (const auto &card : cards) { + for (auto *rel : card->getReverseRelatedCards()) { + if (auto target = cards.value(rel->getName())) { + auto *newRel = new CardRelation(card->getName(), rel->getAttachType(), rel->getIsCreateAllExclusion(), + rel->getIsVariable(), rel->getDefaultCount(), rel->getIsPersistent()); + target->addReverseRelatedCards2Me(newRel); } - - auto *newCardRelation = new CardRelation( - card->getName(), cardRelation->getAttachType(), cardRelation->getIsCreateAllExclusion(), - cardRelation->getIsVariable(), cardRelation->getDefaultCount(), cardRelation->getIsPersistent()); - cards.value(targetCard)->addReverseRelatedCards2Me(newCardRelation); } } }