Sorry for the ugliness and length of this email. I'm having a problem that I
don't understand. I have Davions channel installed into the mud and it's
been working fine for weeks. Me and davion made some changes today, dealing
with completely different things. However once we did a copyover, any of the
channels that use his channel function began to crash the mud. I can gdb and
this is what I found. I took a look at the code for myself but I don't see
the problem. And I don't understand why if it was working before and nothing
was changed it quit working now. If you have any ideas, or can point me in
the right direction i would appreciate it. Thanks.
(gdb) bt
#0 do_newchan (ch=0x40557d68, argument=0x4054ae5f "", channel=7)
at act_comm.c:2393
#1 0x08053fa7 in do_immtalk (ch=0x40557d68,
argument=0x4054ae49 "hehehehe", 'h' <repeats 14 times>) at
act_comm.c:2946
#2 0x08096520 in interpret (ch=0x40557d68,
argument=0x4054ae49 "hehehehe", 'h' <repeats 14 times>) at interp.c:668
#3 0x08076c94 in substitute_alias (d=0x40546008,
argument=0x4054ae45 "imm hehehehe", 'h' <repeats 14 times>) at
alias.c:64
#4 0x080787cb in game_loop_unix (control=6) at comm.c:811
#5 0x080782fa in main (argc=2, argv=0xbfffe1d4) at comm.c:439
#6 0x40069316 in __libc_start_main (main=0x8078170 <main>, argc=2,
ubp_av=0xbfffe1d4, init=0x8048da4 <_init>, fini=0x80e1500 <_fini>,
rtld_fini=0x4000d2fc <_dl_fini>, stack_end=0xbfffe1cc)
at ../sysdeps/generic/libc-start.c:129
for ( d = descriptor_list; d != NULL; d = d->next )
{
CHAR_DATA *vch;
vch = d->character;
if ( vch->desc->connected == CON_PLAYING &&
vch != ch &&
!IS_SET(vch->comm,chan_table
[channel].bit) &&
!IS_SET(vch->comm,COMM_QUIET) )
{
if(can_be_sent(ch,vch,channel) )
act_new(buf,ch,argument,vch,TO_VICT,POS_DEAD);
else
continue;
}
}
return;
}
_________________________________________________________________
MSN Photos is the easiest way to share and print your photos:
http://photos.msn.com/support/worldwide.aspx