From: ao950 AT FreeNet DOT Carleton DOT CA (Paul Derbyshire) Newsgroups: comp.os.msdos.djgpp Subject: Mystery bug! Date: 24 Oct 1997 05:01:16 GMT Organization: The National Capital FreeNet Lines: 27 Message-ID: <62pa2s$8bb@freenet-news.carleton.ca> Reply-To: ao950 AT FreeNet DOT Carleton DOT CA (Paul Derbyshire) NNTP-Posting-Host: freenet2.carleton.ca To: djgpp AT delorie DOT com DJ-Gateway: from newsgroup comp.os.msdos.djgpp Precedence: bulk My code is crashing. :P Specifically it segs out. This is usually not hard to fix. Find the line it crashes at with symify, then look at variables and pointer arithmetic there with a breakpoint. Problem is, this one shifts around when breakpoints are set or reset, sometimes crashes RHIDE or even Win 95, and cannot be found by either Fortify or MSS. (Both insist everything is perfectly okay right up until the end.) What's more, in sticking a breakpoint in one suspect area, I obtained something startling. There are four parameters to this function, and it performs just a function call. If I put a breakpoint on the function call and run to there, it gets there without crashing. If I inspect the variables I get 8, 0, 0, and 0. If I hit F8, thereby running the function it calls, which is make_col_depth in Allegro, and then reinspect the arguments, the 8 and final 0 are unchanged but the other two have become weird large integers around 800,000! This suggests my stack is being trashed. So, is it the stack? If so, how to identify the exact point where it gets corrupted? -- .*. Where feelings are concerned, answers are rarely simple [GeneDeWeese] -() < When I go to the theater, I always go straight to the "bag and mix" `*' bulk candy section...because variety is the spice of life... [me] Paul Derbyshire ao950 AT freenet DOT carleton DOT ca, http://chat.carleton.ca/~pderbysh