From: "florianx" Newsgroups: comp.os.msdos.djgpp References: <3a6ab865$0$25126 AT SSP1NO25 DOT highway DOT telekom DOT at> <94h659$gnf$1 AT nets3 DOT rz DOT RWTH-Aachen DOT DE> Subject: Re: silly question: SIGSEGV Date: Mon, 22 Jan 2001 21:03:21 +0100 Organization: Club Dr-DOS - www.drdos.org X-Newsreader: Microsoft Outlook Express 4.71.1712.3 X-MimeOLE: Produced By Microsoft MimeOLE V4.71.1712.3 Lines: 56 Message-ID: <3a6c9209$0$12666@SSP1NO25.highway.telekom.at> NNTP-Posting-Host: 212.183.88.185 X-Trace: newsreader01.vienna.highway.telekom.at 980193801 12666 212.183.88.185 To: djgpp AT delorie DOT com DJ-Gateway: from newsgroup comp.os.msdos.djgpp Reply-To: djgpp AT delorie DOT com >> 0xffd94c14 0xffd94c14 <------------- funtktion in the DLX program >> 0x00003d23 _dispose+31, line 1476 of program.c > >This *may* be part of your problem. Note that dispose() is being >called recursively, with only that slightly volatile 'DLX program' in >between. Iff that routine uses any kind of non-volatile storage in a >way DLX doesn't expect, this could get you in trouble. The Program is a GUI, first it shut down all subviews, then the view, so it must be recursively. :( > >> I used it, but they couldn't show me more infos, because of the DLXs >> and because some *.c files are included into the main file program.c >> via fe. #include"object.c". > >Two solutions to that: > >1) use -gstabs+ or -ggdb instead of -g in GCC Thx. I will also try -ggdb Does somebody know, what I can use for DLX instead of -gstabs+? It doesn't go (DLX files cannot be loaded). > >2) Don't #include *.c files into one another. It's bad style, anyway. > >> Yes, I tried it. I think it tries to remove a memory block which wasn't >> right allocated via malloc. > >Or which got its internal bookkeeping datastructures damaged. For this >type of problem, YAMD would be my recommendation. If it's possible to >run your app under YAMD, it'll find the bug much more quickly than you >can do it yourself using code-snippeting. It'll crash your app exactly >at the point where it tries overwrites crucial stuff. Ok, that's a way? Do you have the link? > >> All free() commands where replaced by a macro like this: > >That macro does nothing useful on DJGPP. You might want to get rid of >it. I haven't written it. I think, Michal used it, because he want to implement some features, but I don't know. Thanks!! Bye, Florian "Oisdaunn, passt's auf...und losst's eich nix gfoin!!" -- Club Dr-DOS - the unofficial Lineo Dr-DOS page - http://www.drdos.org -- http://www.seal.de.vu - SEAL The official FreeDOS GUI project -- "I brauch kan Dokta...Mia hilft nur da Rock&Roll" - http://www.ostbahn.at