From 1e0d131e8ab96e066af5fa6f01a5e67f63043b73 Mon Sep 17 00:00:00 2001 From: Inkfish Date: Sat, 6 Jun 2009 00:59:30 +0000 Subject: Fixed a crash due to script's backup state not being stored/restored properly. (follow up to r13846) git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@13850 54d463be-8e91-2dee-dedb-b68131a5f0ec --- src/map/script.c | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) (limited to 'src/map/script.c') diff --git a/src/map/script.c b/src/map/script.c index 913682c89..f09b24a5c 100644 --- a/src/map/script.c +++ b/src/map/script.c @@ -3202,18 +3202,18 @@ void run_script_main(struct script_state *st) } if(st->sleep.tick > 0) { - //Delay execution - sd = map_id2sd(st->rid); // Refresh sd since script might have attached someone while running. [Inkfish] - st->sleep.charid = sd?sd->status.char_id:0; - st->sleep.timer = add_timer(gettick()+st->sleep.tick, - run_script_timer, st->sleep.charid, (intptr)st); - linkdb_insert(&sleep_db, (void*)st->oid, st); //Restore previous script if (sd) { sd->st = bk_st; sd->npc_id = bk_npcid; bk_st = NULL; //Remove tag for removal. } + //Delay execution + sd = map_id2sd(st->rid); // Refresh sd since script might have attached someone while running. [Inkfish] + st->sleep.charid = sd?sd->status.char_id:0; + st->sleep.timer = add_timer(gettick()+st->sleep.tick, + run_script_timer, st->sleep.charid, (intptr)st); + linkdb_insert(&sleep_db, (void*)st->oid, st); } else if(st->state != END && sd){ //Resume later (st is already attached to player). -- cgit v1.2.3-60-g2f50