#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:2943523 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 = 12Very odd. Anyone have any idea?
[EDIT] Heh, nevermind. Core was dated a few minutes differently from exec, so the lines were off. Fixed.