aboutsummaryrefslogtreecommitdiff
path: root/elf/dl-tunables.c
diff options
context:
space:
mode:
Diffstat (limited to 'elf/dl-tunables.c')
-rw-r--r--elf/dl-tunables.c7
1 files changed, 4 insertions, 3 deletions
diff --git a/elf/dl-tunables.c b/elf/dl-tunables.c
index 1666736bc1..497e948f1c 100644
--- a/elf/dl-tunables.c
+++ b/elf/dl-tunables.c
@@ -31,6 +31,7 @@
#include <fcntl.h>
#include <ldsodefs.h>
#include <array_length.h>
+#include <dl-minimal-malloc.h>
#define TUNABLES_INTERNAL 1
#include "dl-tunables.h"
@@ -48,13 +49,13 @@ tunables_strdup (const char *in)
size_t i = 0;
while (in[i++] != '\0');
- char *out = __sbrk (i);
+ char *out = __minimal_malloc (i + 1);
/* For most of the tunables code, we ignore user errors. However,
this is a system error - and running out of memory at program
startup should be reported, so we do. */
- if (out == (void *)-1)
- _dl_fatal_printf ("sbrk() failure while processing tunables\n");
+ if (out == NULL)
+ _dl_fatal_printf ("failed to allocate memory to process tunables\n");
while (i-- > 0)
out[i] = in[i];