/[guile]/guile/guile-core/libguile/gc-malloc.c
ViewVC logotype

Diff of /guile/guile-core/libguile/gc-malloc.c

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 1.2 by hanwen, Sun Aug 4 14:09:14 2002 UTC revision 1.3 by hanwen, Sun Aug 4 23:33:28 2002 UTC
# Line 113  scm_gc_init_malloc (void) Line 113  scm_gc_init_malloc (void)
113   */   */
114    
115  void *  void *
 scm_malloc (size_t size)  
 {  
   void *ptr;  
   
   if (size == 0)  
     return NULL;  
   
   SCM_SYSCALL (ptr = malloc (size));  
   if (ptr)  
     return ptr;  
   
   scm_i_sweep_all_segments ("malloc");  
   SCM_SYSCALL (ptr = malloc (size));  
   if (ptr)  
     return ptr;  
   
   scm_igc ("malloc");  
   scm_i_sweep_all_segments ("malloc/gc");  
   
   SCM_SYSCALL (ptr = malloc (size));  
   if (ptr)  
     return ptr;  
   
   scm_memory_error ("malloc");  
 }  
   
 void *  
116  scm_realloc (void *mem, size_t size)  scm_realloc (void *mem, size_t size)
117  {  {
118    void *ptr;    void *ptr;
# Line 164  scm_realloc (void *mem, size_t size) Line 137  scm_realloc (void *mem, size_t size)
137    scm_memory_error ("realloc");    scm_memory_error ("realloc");
138  }  }
139    
140    void *
141    scm_malloc (size_t sz)
142    {
143      return scm_realloc (NULL, sz);
144    }
145                
146    
147  char *  char *
148  scm_strndup (const char *str, size_t n)  scm_strndup (const char *str, size_t n)
149  {  {
# Line 269  scm_gc_malloc (size_t size, const char * Line 249  scm_gc_malloc (size_t size, const char *
249  }  }
250    
251  void *  void *
252    scm_gc_calloc (size_t size, const char *what)
253    {
254      void *ptr = scm_gc_malloc (size, what);
255      memset (ptr, 0x0, size);
256      return ptr;
257    }
258    
259    
260    void *
261  scm_gc_realloc (void *mem, size_t old_size, size_t new_size, const char *what)  scm_gc_realloc (void *mem, size_t old_size, size_t new_size, const char *what)
262  {  {
263    /* XXX - see scm_gc_malloc. */    /* XXX - see scm_gc_malloc. */

Legend:
Removed from v.1.2  
changed lines
  Added in v.1.3

savannah-hackers-public@gnu.org
ViewVC Help
Powered by ViewVC 1.1.26