forked from github/server
do not crash when starting equipment isn't defined in the xml file (it may be in the lua file, after all).
This commit is contained in:
parent
5c9e9f7b9a
commit
ea321bbc59
|
@ -79,8 +79,6 @@ typedef struct donation {
|
|||
int amount;
|
||||
} donation;
|
||||
|
||||
static donation *donations = 0;
|
||||
|
||||
typedef struct request {
|
||||
struct request * next;
|
||||
struct unit *unit;
|
||||
|
|
|
@ -841,15 +841,16 @@ parse_equipment(xmlDocPtr doc)
|
|||
{
|
||||
xmlXPathContextPtr xpath = xmlXPathNewContext(doc);
|
||||
xmlXPathObjectPtr items;
|
||||
xmlNodeSetPtr nodes;
|
||||
xmlNodeSetPtr nsetItems;
|
||||
int i;
|
||||
|
||||
/* reading eressea/races/race */
|
||||
items = xmlXPathEvalExpression(BAD_CAST "/eressea/equipment/item", xpath);
|
||||
nodes = items->nodesetval;
|
||||
nsetItems = items->nodesetval;
|
||||
|
||||
for (i=0;i!=nodes->nodeNr;++i) {
|
||||
xmlNodePtr node = nodes->nodeTab[i];
|
||||
if (nsetItems!=NULL) {
|
||||
for (i=0;i!=nsetItems->nodeNr;++i) {
|
||||
xmlNodePtr node = nsetItems->nodeTab[i];
|
||||
xmlChar * property;
|
||||
const struct item_type * itype;
|
||||
|
||||
|
@ -867,6 +868,7 @@ parse_equipment(xmlDocPtr doc)
|
|||
add_equipment(itype, num);
|
||||
}
|
||||
}
|
||||
}
|
||||
xmlXPathFreeObject(items);
|
||||
xmlXPathFreeContext(xpath);
|
||||
|
||||
|
|
Loading…
Reference in New Issue