malloc and free

Sriharsha sriharsha.v@redpinesignals.com
Mon Dec 27 17:45:00 GMT 2004


What Irtaylor said is true:
Consider code such as this....

...
...
while(some_condition)
{
    if(some_other_condition)
    {
        ...
        some_var = malloc(some_amount);
        ...
    }
    ...
    free(some_var);
}
...
...

Here, may be for the first time "some_other_condition" may be true, but 
subsequently, it may be false due to which the free (or any code that 
refers to some_var) fails.


lrtaylor@micron.com wrote:

>It's probably a bug in your routine.  However, without seeing your code,
>it's hard to give any good answers.  Step through it with a debugger and
>make sure that you're not trying to free the same memory more than once,
>or access memory that hasn't been allocated yet.
>
>Good luck,
>Lyle 
>
>-----Original Message-----
>From: gcc-help-owner@gcc.gnu.org [mailto:gcc-help-owner@gcc.gnu.org] On
>Behalf Of Ankit Jain
>Sent: Friday, December 24, 2004 11:41 AM
>To: gcc
>Subject: malloc and free
>
>hi
>
>routine xyz uses malloc and free functions. it gives
>accurate and correct result if called once. 
>
>but if the function is called in a loop N number of
>times then probably it gives segmentation fault.
>
>what is the reason?  can any body guess or test code
>is needed?
>
>thanks
>
>ankit jain
>
>________________________________________________________________________
>Yahoo! Messenger - Communicate instantly..."Ping" 
>your friends today! Download Messenger Now 
>http://uk.messenger.yahoo.com/download/index.html
>
>
>
>
>  
>

-- 
 *****************************
 * Sriharsha Vedurmudi			
 * Software Engineer		
 * 
 * Redpine Signals Inc.	
 * Gate #395, Plot 87,88			
 * Sagar Society, Road #2, 
 * Banjara Hills,		
 * Hyderabad - 500 034			
 * www.redpinesignals.com	
 *							
 * +91-40-23559911  (Office)
 * +91-98851-37338  (Mobile)
 *****************************



More information about the Gcc-help mailing list