Nick Gammon said:
Back to basics, first. Is this Cygwin, or Linux? Or something else?
I wouldn't set a breakpoint "for all lines". Breakpoints stop execution at some point you consider important. After the breakpoint is hit (if it is hit) then you can step forwards, or examine variables, a line at a time, to confirm some hypothesis you might have.
Like, on the "select" line above, you might put a breakpoint and print what the value of maxdesc is.
I'm running Ubuntu linux
Linux mud 2.6.22-14-server #1 SMP Sun Oct 14 23:34:23 GMT 2007 i686
Distributor ID: Ubuntu
Description: Ubuntu 7.10
Release: 7.10
Codename: gutsy
GCC version 3.4
so here is the connection part of my comm.c
/* Are we recovering from a Hot Reboot? */
if (argv[3] && argv[3][0])
{
fCopyOver = TRUE;
//control = atoi(argv[4]);
if( !fCopyOver ) /* We have already the port if copyover'ed */
{
control = init_socket( argv[4] );
wwwcontrol = init_socket( wwwport );
}
}
else
fCopyOver = FALSE;
if (!fCopyOver)
{
control = init_socket( port );
wwwcontrol = init_socket( wwwport );
}
boot_db();
if (!fCopyOver)
init_web(7001);
sprintf( log_buf, "MUD is ready to rock on ports %d and %d.", port, wwwport );
log_string( log_buf );
if (fCopyOver)
copyover_recover();
game_loop_unix( control, wwwcontrol );
shutdown_web();
close (wwwcontrol);
//if(!fCopyOver)
//close (control);
all the commented out stuff i did many years ago...
the code in bold i just modded per earlier
Edit: it appears that when i searched for the lines of code i modded with
if (!fcopyover) i did not notice that i have that... so something must be wrong with
control = init_socket( argv[4] ); to make the mud crash under copyover...
perhaps i should edit it back, and then set the break point to that line? thoughts?