diff options
-rw-r--r-- | src/map/status.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/src/map/status.c b/src/map/status.c index 1a47ef489..b637ae265 100644 --- a/src/map/status.c +++ b/src/map/status.c @@ -9507,7 +9507,10 @@ int status_change_timer(int tid, unsigned int tick, int id, intptr_t data) map_freeblock_lock(); status_fix_damage(NULL, bl, sd||hp<status->hp?hp:status->hp-1, 1); if( sc->data[type] ) { - if( status->hp == 1 ) break; + if( status->hp == 1 ) { + map_freeblock_unlock(); + break; + } sc_timer_next(10000 + tick, status_change_timer, bl->id, data); } map_freeblock_unlock(); |