From 5c4b7e349d1ac6e251cb6ee139bb365afb083083 Mon Sep 17 00:00:00 2001 From: ultramage Date: Sun, 20 Jan 2008 12:36:28 +0000 Subject: Fixed yet another status code crash, this time when a stonecursed mob with high maxhp changes class to a Poring (see bugreport:621) git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@12097 54d463be-8e91-2dee-dedb-b68131a5f0ec --- src/map/status.c | 7 +++++++ 1 file changed, 7 insertions(+) (limited to 'src') diff --git a/src/map/status.c b/src/map/status.c index ce33bceeb..32d8bfacb 100644 --- a/src/map/status.c +++ b/src/map/status.c @@ -6780,7 +6780,14 @@ int status_change_timer(int tid, unsigned int tick, int id, int data) } if(--(sce->val3) > 0) { if(++(sce->val4)%5 == 0 && status->hp > status->max_hp/4) + { + bool flag; + map_freeblock_lock(); status_zap(bl, sce->val2, 0); + flag = !sc->data[type]; + map_freeblock_unlock(); + if (flag) return 0; //target died, SC cancelled already. + } sc_timer_next(1000+tick,status_change_timer, bl->id, data ); return 0; } -- cgit v1.2.3-60-g2f50