Crash with practice, oddly

Posted by Zeno on Fri 05 Nov 2004 09:14 PM — 1 posts, 4,851 views.

USA #0
#0  0x080577a4 in do_practice (ch=0x9353310, argument=0xfef55505 "enhanced") at act_info.c:3528
3528            if ( !IS_AWAKE(ch) )
(gdb) bt
#0  0x080577a4 in do_practice (ch=0x9353310, argument=0xfef55505 "enhanced") at act_info.c:3528
#1  0x080ce3cd in interpret (ch=0x9353310, argument=0xfef55505 "enhanced") at interp.c:561
#2  0x080a3dff in game_loop () at comm.c:668
#3  0x080a36ba in main (argc=8, argv=0xfef55940) at comm.c:294


3523            CHAR_DATA *mob;
3524            bool cteacher=FALSE;
3525            int adept;
3526            bool can_prac = TRUE;
3527
3528            if ( !IS_AWAKE(ch) )
3529            {
3530                send_to_char( "In your dreams, or what?\n\r", ch );
3531                return;
3532            }


#define IS_AWAKE(ch)            ((ch)->position > POS_SLEEPING)


I did 'print *ch' and everything was fine.
(gdb) p ch->position
$2 = 12


Very odd. Anyone have any idea?

[EDIT] Heh, nevermind. Core was dated a few minutes differently from exec, so the lines were off. Fixed.