Jim Wilson wrote: > David Megginson <[EMAIL PROTECTED]> said: > > On that point, I've tried your patch and it works, but the YASim FDM > > is then (inexplicably) frozen. Is it working for anyone else? > > This is a bug that seems to be related to some sort of memory > corruption. I've seen it off and on over the last couple of weeks > when applying various updates.
I saw it once, but unfortunately didn't track it far enough. It's since stopped happening to me. David, if you're getting this repeatably, would you mind tracing the bad values in gdb with a watchpoint? That is, figure out where the bad value comes from, set a watch point at its address* (e.g. "watch *((int*)&variable)") and re-run the program? If it turns out to be set via another garbage value, then set a watch point there, etc... Ultimately you should get to obviously incorrect code, like a variable that never gets set at all. This is tedious, but reasonably algorithmic. I wish I'd looked harder when it hit me last week; I saw the buffer overflow and just assumed that the garbage was "normal" behavior. Andy * Not the variable itself -- the address only. I've seen gdb get confused and miss watchpoint changes when watching variable names; maybe it's misoptimizing something? This doesn't help if the address changes across reruns, but in my experience that's actually pretty rare. The bad values are usually already bad during initialization, and initialization is a deterministric process. -- Andrew J. Ross NextBus Information Systems Senior Software Engineer Emeryville, CA [EMAIL PROTECTED] http://www.nextbus.com "Men go crazy in conflagrations. They only get better one by one." - Sting (misquoted) _______________________________________________ Flightgear-devel mailing list [EMAIL PROTECTED] http://mail.flightgear.org/mailman/listinfo/flightgear-devel