From 5812a26eeb8928f34eadc5c5dfca74563a824cd0 Mon Sep 17 00:00:00 2001 From: Patrick Gauvin Date: Sun, 26 Jun 2016 13:06:07 -0400 Subject: Update dlerror usage Handles possible NULL return value Updates #2747 --- testsuites/libtests/dl02/dl-load.c | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) (limited to 'testsuites/libtests/dl02/dl-load.c') diff --git a/testsuites/libtests/dl02/dl-load.c b/testsuites/libtests/dl02/dl-load.c index 5bb40dccba..5e74e0e425 100644 --- a/testsuites/libtests/dl02/dl-load.c +++ b/testsuites/libtests/dl02/dl-load.c @@ -21,13 +21,15 @@ static void* dl_load_obj(const char* name) void* handle; int unresolved; char* message = "loaded"; + char* err; printf("load: %s\n", name); handle = dlopen (name, RTLD_NOW | RTLD_GLOBAL); if (!handle) { - printf("dlopen failed: %s\n", dlerror()); + err = dlerror (); + printf ("dlopen failed: %s\n", err ? err : ""); return NULL; } @@ -48,6 +50,7 @@ int dl_load_test(void) call_t call; int call_ret; int ret; + char* err; o1 = dl_load_obj("/dl-o1.o"); if (!o1) @@ -83,7 +86,8 @@ int dl_load_test(void) if (dlclose (o1) < 0) { - printf("dlclose o1 failed: %s\n", dlerror()); + err = dlerror (); + printf ("dlclose o1 failed: %s\n", err ? err : ""); ret = 1; } @@ -91,7 +95,8 @@ int dl_load_test(void) if (dlclose (o2) < 0) { - printf("dlclose o1 failed: %s\n", dlerror()); + err = dlerror (); + printf ("dlclose o2 failed: %s\n", err ? err : ""); ret = 1; } -- cgit v1.2.3