ftp.delorie.com/archives/browse.cgi   search  
Mail Archives: djgpp/2004/10/08/05:00:55

X-Authentication-Warning: delorie.com: mail set sender to djgpp-bounces using -f
Message-ID: <4166513D.92D782BF@yahoo.com>
From: CBFalconer <cbfalconer AT yahoo DOT com>
Organization: Ched Research
X-Mailer: Mozilla 4.75 [en] (Win98; U)
X-Accept-Language: en
MIME-Version: 1.0
Newsgroups: comp.os.msdos.djgpp
Subject: Re: Free() crash my program!
References: <D7Kdnfji89etsfvcRVn-qA AT comcast DOT com> <41663c2c$0$179$cc7c7865 AT news DOT luth DOT se>
Lines: 40
Date: Fri, 08 Oct 2004 08:57:58 GMT
NNTP-Posting-Host: 12.76.132.39
X-Complaints-To: abuse AT worldnet DOT att DOT net
X-Trace: bgtnsc05-news.ops.worldnet.att.net 1097225878 12.76.132.39 (Fri, 08 Oct 2004 08:57:58 GMT)
NNTP-Posting-Date: Fri, 08 Oct 2004 08:57:58 GMT
To: djgpp AT delorie DOT com
DJ-Gateway: from newsgroup comp.os.msdos.djgpp
Reply-To: djgpp AT delorie DOT com

Martin Str|mberg wrote:
> JC <jessechao AT comcast DOT net> wrote:
> 
>> I used djgpp to develop a simple program, using dosmemget(),
>> to dump some DOS memory. The code is like following:
> 
>>     p = (UINT8 *)malloc(len+1);
>>     if (p == NULL)
>>     {
>>         ...
>>     }
>>     dosmemget(addr, len, p);
>>     /* Code to printf the contents in *p */
>>  ...
>>  free(p);
> 
>> The code compiled & ran fine. But when the code execute
>> the free(). The code crashed and got SIGSEG error:
> 
>>     Exiting due to signal SIGSEGV
>>     General Protection Fault at eip=00006ac4
> 
>> Anyone can help me on this?
> 
> 1. Remove that UINT8 * cast.
> 
> 2. If that doesn't help you need to give more information, because
> malloc() and free() work fine so it must be something else.

Shouldn't there be some limit on the len parameter?  Just
considering the nature of the DOS memory addressing, I would expect
it to not work for anything over 65535.  But that cast certainly
has to go.

-- 
Chuck F (cbfalconer AT yahoo DOT com) (cbfalconer AT worldnet DOT att DOT net)
   Available for consulting/temporary embedded and systems.
   <http://cbfalconer.home.att.net>  USE worldnet address!


- Raw text -


  webmaster     delorie software   privacy  
  Copyright © 2019   by DJ Delorie     Updated Jul 2019