From 220d882bc33baad69db55ade4ea41b845b0e9611 Mon Sep 17 00:00:00 2001 From: Andrei Karas Date: Wed, 17 Dec 2014 18:50:37 +0300 Subject: Remove plugin data in mob_db destruction. --- src/map/mob.c | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) (limited to 'src/map/mob.c') diff --git a/src/map/mob.c b/src/map/mob.c index ad8615678..8fe3e3cef 100644 --- a/src/map/mob.c +++ b/src/map/mob.c @@ -34,6 +34,7 @@ #include "script.h" #include "skill.h" #include "status.h" +#include "../common/HPM.h" #include "../common/cbasetypes.h" #include "../common/db.h" #include "../common/ers.h" @@ -4701,7 +4702,17 @@ int do_init_mob(bool minimal) { void mob_destroy_mob_db(int index) { - aFree(mob->db_data[index]); + struct mob_db *data = mob->db_data[index]; + int v; + for (v = 0; v < data->hdatac; v++ ) { + if (data->hdata[v]->flag.free ) { + aFree(data->hdata[v]->data); + } + aFree(data->hdata[v]); + } + if (data->hdata) + aFree(data->hdata); + aFree(data); mob->db_data[index] = NULL; } -- cgit v1.2.3-60-g2f50