Greetings all,
Ok i have read the already posted questions ofr this problem, and i cannot
for the life of me figure it out. I am new to coding and i just spent the
last week trying to solve this. Sorry if it seems trival. Anyway here it is:
Reading symbols from /lib/libresolv.so.2...done.
Loaded symbols for /lib/libresolv.so.2
#0 0x0807eeed in game_loop_unix (control=4) at comm.c:785
785 if (d->character != NULL && d->character->daze > 0)
The code,
#if defined(unix)
void game_loop_unix (int control)
{
static struct timeval null_time;
struct timeval last_time;
signal (SIGPIPE, SIG_IGN);
gettimeofday (&last_time, NULL);
current_time = (time_t) last_time.tv_sec;
/* Main loop */
while (!merc_down)
{
fd_set in_set;
fd_set out_set;
fd_set exc_set;
DESCRIPTOR_DATA *d;
int maxdesc;
#if defined(MALLOC_DEBUG)
if (malloc_verify () != 1)
abort ();
#endif
/*
* Poll all active descriptors.
*/
FD_ZERO (&in_set);
FD_ZERO (&out_set);
FD_ZERO (&exc_set);
FD_SET (control, &in_set);
maxdesc = control;
for (d = descriptor_list; d; d = d->next)
{
maxdesc = UMAX (maxdesc, d->descriptor);
FD_SET (d->descriptor, &in_set);
FD_SET (d->descriptor, &out_set);
FD_SET (d->descriptor, &exc_set);
}
if (select (maxdesc + 1, &in_set, &out_set, &exc_set, &null_time) <
0)
{
perror ("Game_loop: select: poll");
exit (1);
}
/*
* New connection?
*/
if (FD_ISSET (control, &in_set))
init_descriptor (control);
/*
* Kick out the freaky folks.
*/
for (d = descriptor_list; d != NULL; d = d_next)
{
d_next = d->next;
if (FD_ISSET (d->descriptor, &exc_set))
{
FD_CLR (d->descriptor, &in_set);
FD_CLR (d->descriptor, &out_set);
if (d->character && d->connected == CON_PLAYING)
save_char_obj (d->character);
d->outtop = 0;
close_socket (d);
}
}
/*
* Process input.
*/
for (d = descriptor_list; d != NULL; d = d_next)
{
d_next = d->next;
d->fcommand = FALSE;
if (FD_ISSET (d->descriptor, &in_set))
{
if (d->character != NULL)
d->character->timer = 0;
if (!read_from_descriptor (d))
{
FD_CLR (d->descriptor, &out_set);
if (d->character != NULL && d->connected == CON_PLAYING)
save_char_obj (d->character);
d->outtop = 0;
close_socket (d);
continue;
}
}
if (d->character != NULL && d->character->daze > 0) <-Grrrr
--d->character->daze;
if (d->character != NULL && d->character->wait > 0)
{
--d->character->wait;
continue;
}
read_from_buffer (d);
if (d->incomm[0] != '\0')
{
d->fcommand = TRUE;
stop_idling (d->character);
/* OLC */
if (d->showstr_point)
show_string (d, d->incomm);
else if (d->pString)
string_add (d->character, d->incomm);
else
switch (d->connected)
{
case CON_PLAYING:
if (!run_olc_editor (d))
substitute_alias (d, d->incomm);
break;
default:
nanny (d, d->incomm);
break;
}
d->incomm[0] = '\0';
}
}
I really appriciate any help, flames included, and would like to thank all
the people who post and answer questions here, you are a really big help and
my mud would not be without it :) Nezzi