X-Git-Url: http://git.hcoop.net/bpt/guile.git/blobdiff_plain/d8d7c7bf5706ce7873257eb88f0a5cc01b541858..6570cfdfd83b0d792f6ff01594915f3ec1336b16:/libguile/gc-malloc.c diff --git a/libguile/gc-malloc.c b/libguile/gc-malloc.c index 179558fe1..894ca0668 100644 --- a/libguile/gc-malloc.c +++ b/libguile/gc-malloc.c @@ -1,5 +1,6 @@ /* Copyright (C) 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, - * 2004, 2006, 2008, 2009, 2010, 2011, 2012 Free Software Foundation, Inc. + * 2004, 2006, 2008, 2009, 2010, 2011, 2012, 2013, + * 2014 Free Software Foundation, Inc. * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public License @@ -52,15 +53,11 @@ extern unsigned long * __libc_ia64_register_backing_store_base; #include "libguile/deprecation.h" #include "libguile/gc.h" -#include "libguile/private-gc.h" - #ifdef GUILE_DEBUG_MALLOC #include "libguile/debug-malloc.h" #endif -#ifdef HAVE_UNISTD_H #include -#endif /* INIT_MALLOC_LIMIT is the initial amount of malloc usage which will @@ -134,17 +131,16 @@ scm_realloc (void *mem, size_t size) return ptr; /* Time is hard: trigger a full, ``stop-the-world'' GC, and try again. */ -#ifdef HAVE_GC_GCOLLECT_AND_UNMAP GC_gcollect_and_unmap (); -#else - GC_gcollect (); -#endif ptr = do_realloc (mem, size); if (ptr) return ptr; - scm_memory_error ("realloc"); + scm_report_out_of_memory (); + + /* Not reached. */ + return NULL; } void *