Fixed a memory leak in achievementremove
Fixes #2313 Thanks to @CairoLee
This commit is contained in:
parent
115c1b9f5f
commit
ee1242908b
@ -131,6 +131,7 @@ bool achievement_remove(struct map_session_data *sd, int achievement_id)
|
|||||||
if (i != sd->achievement_data.count - 1)
|
if (i != sd->achievement_data.count - 1)
|
||||||
memmove(&sd->achievement_data.achievements[i], &sd->achievement_data.achievements[i + 1], sizeof(struct achievement) * (sd->achievement_data.count - 1 - i));
|
memmove(&sd->achievement_data.achievements[i], &sd->achievement_data.achievements[i + 1], sizeof(struct achievement) * (sd->achievement_data.count - 1 - i));
|
||||||
|
|
||||||
|
aFree(&sd->achievement_data.achievements[sd->achievement_data.count-1]);
|
||||||
sd->achievement_data.count--;
|
sd->achievement_data.count--;
|
||||||
if (!sd->achievement_data.achievements[i].completed)
|
if (!sd->achievement_data.achievements[i].completed)
|
||||||
sd->achievement_data.incompleteCount--;
|
sd->achievement_data.incompleteCount--;
|
||||||
|
Loading…
x
Reference in New Issue
Block a user