aboutsummaryrefslogtreecommitdiff
path: root/elf/dl-open.c
diff options
context:
space:
mode:
Diffstat (limited to 'elf/dl-open.c')
-rw-r--r--elf/dl-open.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/elf/dl-open.c b/elf/dl-open.c
index 4f4d72e..a4ad81e 100644
--- a/elf/dl-open.c
+++ b/elf/dl-open.c
@@ -36,6 +36,7 @@
#include <array_length.h>
#include <libc-early-init.h>
#include <gnu/lib-names.h>
+#include <dl-find_object.h>
#include <dl-dst.h>
#include <dl-prop.h>
@@ -731,6 +732,10 @@ dl_open_worker_begin (void *a)
objects. */
update_scopes (new);
+ if (!_dl_find_object_update (new))
+ _dl_signal_error (ENOMEM, new->l_libname->name, NULL,
+ N_ ("cannot allocate address lookup data"));
+
/* FIXME: It is unclear whether the order here is correct.
Shouldn't new objects be made available for binding (and thus
execution) only after there TLS data has been set up fully?