From: Damian Yerrick Newsgroups: comp.os.msdos.djgpp Subject: Re: free() error Organization: Pin Eight Software http://pineight.8m.com/ Message-ID: References: <39e36135 AT news DOT vogel DOT pl> X-Newsreader: Forte Agent 1.7/32.534 MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Lines: 40 X-Trace: +r2abgzTirB0pq5OyiEHGbNbaPugrRFFv4k/dU08+Vbwu3nSPWMve8IUKS314Mzz2wyasLUjVliv!/cbzCO1jwTu8RNmA8+sjIbIHZh1bCKjKqDMJlgfPWxzQz4S1+XfXrp+ltX89NoHdSCdBjG2iMS5m!B59NgYg= X-Complaints-To: abuse AT gte DOT net X-Abuse-Info: Please be sure to forward a copy of ALL headers X-Abuse-Info: Otherwise we will be unable to process your complaint properly NNTP-Posting-Date: Tue, 10 Oct 2000 19:12:45 GMT Distribution: world Date: Tue, 10 Oct 2000 19:12:46 GMT To: djgpp AT delorie DOT com DJ-Gateway: from newsgroup comp.os.msdos.djgpp Reply-To: djgpp AT delorie DOT com On Tue, 10 Oct 2000 20:36:07 +0200, "Chaos" wrote: >From time to time (meaning quite randomly) I have my program crash leaving >such information: > >ebp=0009e748 esp=0009e73c program=C:\MOJE\PROGRAMY\CARZ\V3.EXE >cs: sel=00a7 base=83564000 limit=ffaeafff >ds: sel=00af base=83564000 limit=ffaeafff >es: sel=00af base=83564000 limit=ffaeafff >fs: sel=0087 base=00007ae0 limit=0000ffff >gs: sel=00bf base=00000000 limit=0010ffff >ss: sel=00af base=83564000 limit=ffaeafff >App stack: [0009e7d0..0001e7d0] Exceptn stack: [0001e6b8..0001c778] > >Call frame traceback EIPs: > 0x000051a0 _free+172 > 0x00002dec _main+2004, line 962 of V3.c > 0x00003ece ___crt1_startup+174 > >C:\Moje\programy\Carz>symify V3.exe > >On what side the eror/bug hides: mine or free function? >Program crash's usually in Win98 DOSbox. But the strangest is that it blowes >himself away random (once it works OK and some other time it always leaves >with "registers prompt"). Can U tell me what can I do 2 fix it? You probably have a buffer overflow somewhere, writing garbage over the data structure that malloc()/free() uses to keep track of the heap. For more information, look in DJGPP FAQ entry 9.2. YAMD, yet another malloc() debugger by Nate Eldredge, may help: http://www3.hmc.edu/~neldredge/yamd/ --