Fixed some memleaks in skill_require_db

Thanks to @Everade
This commit is contained in:
Lemongrass3110 2017-07-30 16:40:48 +02:00
parent 6748ff7e17
commit b2c5424af1

View File

@ -20879,6 +20879,11 @@ static bool skill_parse_row_requiredb(char* split[], int columns, int current)
trim(split[11]);
if (split[11][0] != '\0' || atoi(split[11])) {
int require[MAX_SKILL_STATUS_REQUIRE];
if( skill_db[idx]->require.status_count > 0 ){
aFree(skill_db[idx]->require.status);
}
if ((skill_db[idx]->require.status_count = skill_split_atoi2(split[11], require, ":", SC_STONE, ARRAYLENGTH(require)))) {
CREATE(skill_db[idx]->require.status, enum sc_type, skill_db[idx]->require.status_count);
for (i = 0; i < skill_db[idx]->require.status_count; i++){
@ -20906,6 +20911,10 @@ static bool skill_parse_row_requiredb(char* split[], int columns, int current)
if (split[33][0] != '\0' || atoi(split[33])) {
int require[MAX_SKILL_EQUIP_REQUIRE];
if( skill_db[idx]->require.eqItem_count > 0 ){
aFree(skill_db[idx]->require.eqItem);
}
if ((skill_db[idx]->require.eqItem_count = skill_split_atoi2(split[33], require, ":", 500, ARRAYLENGTH(require)))) {
CREATE(skill_db[idx]->require.eqItem, uint16, skill_db[idx]->require.eqItem_count);
for (i = 0; i < skill_db[idx]->require.eqItem_count; i++){