From 0a01e23a2a37d86281d01a8638017e6e8b35d6c8 Mon Sep 17 00:00:00 2001 From: Andrei Karas Date: Mon, 11 May 2020 01:45:30 +0300 Subject: Fix crash in achievement progress update --- src/map/achievement.c | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'src/map/achievement.c') diff --git a/src/map/achievement.c b/src/map/achievement.c index e6a9ae3be..0b0d9749b 100644 --- a/src/map/achievement.c +++ b/src/map/achievement.c @@ -194,6 +194,8 @@ static void achievement_progress_add(struct map_session_data *sd, const struct a // Check if the Achievement is complete. if (achievement->check_complete(sd, ad)) { achievement->validate_achieve(sd, ad->id); + if ((ach = achievement->ensure(sd, ad)) == NULL) + return; ach->completed_at = time(NULL); } @@ -232,6 +234,8 @@ static void achievement_progress_set(struct map_session_data *sd, const struct a if (achievement->check_complete(sd, ad)) { achievement->validate_achieve(sd, ad->id); + if ((ach = achievement->ensure(sd, ad)) == NULL) + return; ach->completed_at = time(NULL); } -- cgit v1.2.3-60-g2f50