summaryrefslogtreecommitdiff
path: root/src/resources/itemdb.cpp
diff options
context:
space:
mode:
authorYohann Ferreira <yohann_dot_ferreira_at_orange_dot_efer>2011-01-13 17:58:50 +0100
committerYohann Ferreira <yohann_dot_ferreira_at_orange_dot_efer>2011-01-13 17:58:50 +0100
commit715d07feeb01a3f633aa42aeb40a524c16ca321e (patch)
tree68eec12d328476a9f303cc0584ecb3cd6fa868af /src/resources/itemdb.cpp
parent83a3b6f920f446b3001725554ab15bed34d6f368 (diff)
downloadmana-715d07feeb01a3f633aa42aeb40a524c16ca321e.tar.gz
mana-715d07feeb01a3f633aa42aeb40a524c16ca321e.tar.bz2
mana-715d07feeb01a3f633aa42aeb40a524c16ca321e.tar.xz
mana-715d07feeb01a3f633aa42aeb40a524c16ca321e.zip
Made the client handle better the lack of items.xml file.
Now the client returns to server choice dialog with a warning instead of aborting. I'm kinda certain I'm not the only one getting crazy with such a lazy behaviour. Reviewed-by: Jaxad.
Diffstat (limited to 'src/resources/itemdb.cpp')
-rw-r--r--src/resources/itemdb.cpp10
1 files changed, 7 insertions, 3 deletions
diff --git a/src/resources/itemdb.cpp b/src/resources/itemdb.cpp
index 019c66e3..435cdf96 100644
--- a/src/resources/itemdb.cpp
+++ b/src/resources/itemdb.cpp
@@ -89,11 +89,14 @@ void ItemDB::load()
mUnknown->setSprite(errFile, GENDER_MALE);
mUnknown->setSprite(errFile, GENDER_FEMALE);
- XML::Document doc("items.xml");
+ XML::Document doc(ITEMS_DB_FILE);
xmlNodePtr rootNode = doc.rootNode();
if (!rootNode || !xmlStrEqual(rootNode->name, BAD_CAST "items"))
- logger->error("ItemDB: Error while loading items.xml!");
+ {
+ logger->log("ItemDB: Error while loading " ITEMS_DB_FILE "!");
+ return;
+ }
for_each_xml_child_node(node, rootNode)
{
@@ -104,7 +107,8 @@ void ItemDB::load()
if (!id)
{
- logger->log("ItemDB: Invalid or missing item ID in items.xml!");
+ logger->log("ItemDB: Invalid or missing item ID in "
+ ITEMS_DB_FILE "!");
continue;
}
else if (mItemInfos.find(id) != mItemInfos.end())