Fixed bug with loading failing on Guild bank areas

This commit is contained in:
Arthur Dene Ice 2014-09-02 10:54:42 -07:00
parent ca84040a39
commit 41d57ddab6

View File

@ -686,19 +686,26 @@ bool GuildBankManager::Load(uint32 guildID)
else else
whoFor[0] = '\0'; whoFor[0] = '\0';
if(slot < 0 || if(slot < 0)
((area != GuildBankMainArea || slot >= GUILD_BANK_MAIN_AREA_SIZE) ||
(area == GuildBankMainArea || slot >= GUILD_BANK_DEPOSIT_AREA_SIZE)))
continue; continue;
bank->Items.MainArea[slot].ItemID = itemID; GuildBankItem *itemSection = nullptr;
bank->Items.MainArea[slot].Quantity = qty;
strn0cpy(bank->Items.MainArea[slot].Donator, donator, sizeof(donator)); if (area == GuildBankMainArea && slot < GUILD_BANK_MAIN_AREA_SIZE)
itemSection = bank->Items.MainArea;
else if (area != GuildBankMainArea && slot < GUILD_BANK_DEPOSIT_AREA_SIZE)
itemSection = bank->Items.DepositArea;
else
continue;
bank->Items.MainArea[slot].Permissions = permissions; itemSection[slot].ItemID = itemID;
itemSection[slot].Quantity = qty;
strn0cpy(bank->Items.MainArea[slot].WhoFor, whoFor, sizeof(whoFor)); strn0cpy(itemSection[slot].Donator, donator, sizeof(donator));
itemSection[slot].Permissions = permissions;
strn0cpy(itemSection[slot].WhoFor, whoFor, sizeof(whoFor));
} }
Banks.push_back(bank); Banks.push_back(bank);