NEWBIE: new crashes, have info...

zero@baker.cnw.com
Date: 05/13/96


First of all just in case it matters I am using an account on a Sunos 
5.1.3 OS (not sure about machine specs).  I was changing do_who so it 
would show the level of all 5 of a charcters classes on the list but all 
of the sudden GET_TITLE started causing a problem. For a history the 
GET_LEVELX macro is GET_LEVELX(ch, class)  (ch)->player.level[(class)].

I got a couple errors i did not recognize when it compiled but they were 
only warnings so i ignored them:

act.informative.c: In function `do_who':
act.informative.c:1000: warning: format argument is not a pointer (arg 3)
act.informative.c:1000: warning: int format, pointer arg (arg 8)
act.informative.c:1000: warning: too few arguments for format

the code near those lines is as follows:

994 } else {
995   num_can_see++;
996   sprintf(buf, "%s[%2d %2d %2d %2d %2d] %s %s",
997         GET_LEVELX(tch, CLASS_MAGIC_USER), GET_LEVELX(tch, CLASS_CLERIC),
998         GET_LEVELX(tch, CLASS_THIEF), GET_LEVELX(tch, CLASS_WARRIOR),
999         GET_LEVELX(tch, CLASS_BARD), GET_NAME(tch), 
1000        GET_TITLE(tch));   
1001  
1002  if (GET_INVIS_LEV(tch))

and as soon as someone types the who command the mud crashes and i get 
this gdb output:

#0  0xef696dcc in strlen ()
#1  0xef6cae3c in _doprnt_unlocked ()
#2  0xef6cc178 in sprintf ()
#3  0x19334 in do_who (ch=0xf2a28, argument=0xeffff6a3 "", cmd=0, subcmd=0)
    at act.informative.c:996
#4  0x3e314 in command_interpreter (ch=0xf2a28, argument=0xeffff6a0 "who")
    at interpreter.c:628
#5  0x123d0 in game_loop (mother_desc=6) at comm.c:603
#6  0x11a24 in init_game (port=4111) at comm.c:242
#7  0x119a8 in main (argc=4, argv=0xeffffd24) at comm.c:212

I have a feeling this is some simple thing i introduced my self but i 
cant seem to figure out what it is this time.  Any insight would be 
greatly appreciated.

Thanks,
Chris

P.S.  dont flame me for my newbie question, you could have just deleted 
it before you read it :)



This archive was generated by hypermail 2b30 : 12/18/00 PST