diff --git a/cockatrice/src/carddatabase.cpp b/cockatrice/src/carddatabase.cpp index 65df3884..db862c80 100644 --- a/cockatrice/src/carddatabase.cpp +++ b/cockatrice/src/carddatabase.cpp @@ -14,6 +14,8 @@ #include #include +const int CardDatabase::versionNeeded = 2; + CardSet::CardSet(const QString &_shortName, const QString &_longName) : shortName(_shortName), longName(_longName) { @@ -625,6 +627,8 @@ bool CardDatabase::loadFromFile(const QString &fileName) if (xml.readNext() == QXmlStreamReader::StartElement) { if (xml.name() != "cockatrice_carddatabase") return false; + if (xml.attributes().value("version").toString().toInt() < versionNeeded) + return false; while (!xml.atEnd()) { if (xml.readNext() == QXmlStreamReader::EndElement) break; @@ -649,7 +653,7 @@ bool CardDatabase::saveToFile(const QString &fileName) xml.setAutoFormatting(true); xml.writeStartDocument(); xml.writeStartElement("cockatrice_carddatabase"); - xml.writeAttribute("version", "1"); + xml.writeAttribute("version", QString::number(versionNeeded)); xml.writeStartElement("sets"); QHashIterator setIterator(setHash); diff --git a/cockatrice/src/carddatabase.h b/cockatrice/src/carddatabase.h index fe892a03..2c9ae6ca 100644 --- a/cockatrice/src/carddatabase.h +++ b/cockatrice/src/carddatabase.h @@ -180,6 +180,7 @@ protected: CardInfo *noCard; PictureLoadingThread *loadingThread; private: + static const int versionNeeded; void loadCardsFromXml(QXmlStreamReader &xml); void loadSetsFromXml(QXmlStreamReader &xml); public: diff --git a/oracle/src/oracleimporter.cpp b/oracle/src/oracleimporter.cpp index 18b1be49..e391e9e9 100644 --- a/oracle/src/oracleimporter.cpp +++ b/oracle/src/oracleimporter.cpp @@ -92,7 +92,8 @@ CardInfo *OracleImporter::addCard(const QString &setName, if (cardName.contains("XX")) cardName.remove("XX"); cardName = cardName.replace("Æ", "AE"); - + cardName = cardName.replace("’", "'"); + CardInfo *card; if (cardHash.contains(cardName)) { card = cardHash.value(cardName);