I finally sat down today in hopes of tracking down some of the bugs we encountered at FoM last April. The bug that kept crashing the mud in the latter half had something to do with the MUD completely locking up when someone disconnected during pre-load (i.e. typing in a wrong password). Of course, I can't seem to reproduce that error now, so I've put that one on the backburner for the time being.
The one I can look into is a bug with copyover. Whenever I use copyover and someone is connected to the FoM port, the MUD locks into a loop somewhere during or after copyover_recover, logging "Write_to_descriptor: Bad file number" indefinitely. This doesn't happen when we only have ppl connected to main/java ports; just fom and fomjava. I am at a total loss to find anything wrong with either of them. I tried searching for "Bad file number"; absolutely no instance of that (or "Bad file" or "file number" for that matter) anywhere in the source! Aside from wondering how that error is being generated if it doesn't seem to exist in the code anywhere, I also have no idea what it means, aside that there's -probably something- (not very specific, eh?) wrong with the fom descriptors. I can't even do a basic debug without knowing where the error is coming from in the first place (I'm guessing 'write to descriptor', but I can't see how).
Could you give me some general info on what that bug means, any suggestions, etc? At this point, I'm dead stumped.
Thanks =)
The one I can look into is a bug with copyover. Whenever I use copyover and someone is connected to the FoM port, the MUD locks into a loop somewhere during or after copyover_recover, logging "Write_to_descriptor: Bad file number" indefinitely. This doesn't happen when we only have ppl connected to main/java ports; just fom and fomjava. I am at a total loss to find anything wrong with either of them. I tried searching for "Bad file number"; absolutely no instance of that (or "Bad file" or "file number" for that matter) anywhere in the source! Aside from wondering how that error is being generated if it doesn't seem to exist in the code anywhere, I also have no idea what it means, aside that there's -probably something- (not very specific, eh?) wrong with the fom descriptors. I can't even do a basic debug without knowing where the error is coming from in the first place (I'm guessing 'write to descriptor', but I can't see how).
Could you give me some general info on what that bug means, any suggestions, etc? At this point, I'm dead stumped.
Thanks =)