diff options
Diffstat (limited to 'misc')
-rw-r--r-- | misc/efgcvt-template.c | 5 | ||||
-rw-r--r-- | misc/efgcvt.c | 1 | ||||
-rw-r--r-- | misc/fstab.c | 3 | ||||
-rw-r--r-- | misc/hsearch.c | 4 | ||||
-rw-r--r-- | misc/mntent.c | 5 | ||||
-rw-r--r-- | misc/qefgcvt.c | 1 | ||||
-rw-r--r-- | misc/unwind-link.c | 2 |
7 files changed, 13 insertions, 8 deletions
diff --git a/misc/efgcvt-template.c b/misc/efgcvt-template.c index 27a00a3ab5..00d0aa1d7e 100644 --- a/misc/efgcvt-template.c +++ b/misc/efgcvt-template.c @@ -22,6 +22,7 @@ #include <sys/param.h> #include <libc-lock.h> #include <math_ldbl_opt.h> +#include <set-freeres.h> #ifndef SPRINTF # define SPRINTF sprintf @@ -38,7 +39,7 @@ static char FCVT_BUFFER[MAXDIG]; static char ECVT_BUFFER[MAXDIG]; -libc_freeres_ptr (static char *FCVT_BUFPTR); +static char *FCVT_BUFPTR; char * __FCVT (FLOAT_TYPE value, int ndigit, int *decpt, int *sign) @@ -73,3 +74,5 @@ __GCVT (FLOAT_TYPE value, int ndigit, char *buf) SPRINTF (buf, "%.*" FLOAT_FMT_FLAG "g", MIN (ndigit, NDIGIT_MAX), value); return buf; } + +weak_alias (FCVT_BUFPTR, __EFGCVT_FREEMEM_PTR); diff --git a/misc/efgcvt.c b/misc/efgcvt.c index 53673a08fe..f2a33afcdf 100644 --- a/misc/efgcvt.c +++ b/misc/efgcvt.c @@ -24,6 +24,7 @@ #define __GCVT __gcvt #define __ECVT_R __ecvt_r #define __FCVT_R __fcvt_r +#define __EFGCVT_FREEMEM_PTR __libc_efgcvt_freemem_ptr #include <efgcvt-dbl-macros.h> #include <efgcvt-template.c> diff --git a/misc/fstab.c b/misc/fstab.c index 0e04235a2b..ea4afc7d0f 100644 --- a/misc/fstab.c +++ b/misc/fstab.c @@ -177,7 +177,8 @@ fstab_convert (struct fstab_state *state) /* Make sure the memory is freed if the programs ends while in memory-debugging mode and something actually was allocated. */ -libc_freeres_fn (fstab_free) +void +__libc_fstab_freemem (void) { char *buffer; diff --git a/misc/hsearch.c b/misc/hsearch.c index 615f7f08a3..f9a3f9267a 100644 --- a/misc/hsearch.c +++ b/misc/hsearch.c @@ -46,7 +46,3 @@ __hdestroy (void) __hdestroy_r (&htab); } weak_alias (__hdestroy, hdestroy) - -/* Make sure the table is freed if we want to free everything before - exiting. */ -text_set_element (__libc_subfreeres, __hdestroy); diff --git a/misc/mntent.c b/misc/mntent.c index 4a1c5444cf..61dc63f253 100644 --- a/misc/mntent.c +++ b/misc/mntent.c @@ -19,6 +19,7 @@ #include <mntent.h> #include <stdlib.h> #include <allocate_once.h> +#include <set-freeres.h> struct mntent_buffer { @@ -28,7 +29,7 @@ struct mntent_buffer /* We don't want to allocate the static buffer all the time since it is not always used (in fact, rather infrequently). */ -libc_freeres_ptr (static void *mntent_buffer); +static void *mntent_buffer; static void * allocate (void *closure) @@ -56,3 +57,5 @@ getmntent (FILE *stream) return __getmntent_r (stream, &buffer->m, buffer->buffer, sizeof (buffer->buffer)); } + +weak_alias (mntent_buffer, __libc_mntent_freemem_ptr) diff --git a/misc/qefgcvt.c b/misc/qefgcvt.c index 91a3e2014a..a4ea8b801e 100644 --- a/misc/qefgcvt.c +++ b/misc/qefgcvt.c @@ -24,6 +24,7 @@ #define __GCVT __qgcvt #define __ECVT_R __qecvt_r #define __FCVT_R __qfcvt_r +#define __EFGCVT_FREEMEM_PTR __libc_qefgcvt_freemem_ptr #include <efgcvt-ldbl-macros.h> #include <efgcvt-template.c> diff --git a/misc/unwind-link.c b/misc/unwind-link.c index 63b655949e..c1e971b305 100644 --- a/misc/unwind-link.c +++ b/misc/unwind-link.c @@ -131,7 +131,7 @@ __libc_unwind_link_after_fork (void) } } -void __libc_freeres_fn_section +void __libc_unwind_link_freeres (void) { if (global_libgcc_handle != NULL) |