From fdc86bc9a83c23b08b8f6d4b53df2f56e15f3e85 Mon Sep 17 00:00:00 2001 From: Ulrich Drepper Date: Wed, 7 Sep 2011 23:50:40 -0400 Subject: [PATCH] Pass back error code from dlerror_run --- ChangeLog | 3 +++ elf/dl-libc.c | 6 +++--- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/ChangeLog b/ChangeLog index 7e77bc9..0d2580d 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,5 +1,8 @@ 2011-09-07 Ulrich Drepper + * elf/dl-libc.c (dlerror_run): Pass back error code from + dl_catch_error. + [BZ #13123] * elf/dl-load.c (lose): Free l_origin if it is valid. diff --git a/elf/dl-libc.c b/elf/dl-libc.c index e440d01..828588a 100644 --- a/elf/dl-libc.c +++ b/elf/dl-libc.c @@ -45,10 +45,10 @@ dlerror_run (void (*operate) (void *), void *args) const char *last_errstring = NULL; bool malloced; - (void) GLRO(dl_catch_error) (&objname, &last_errstring, &malloced, - operate, args); + int result = (GLRO(dl_catch_error) (&objname, &last_errstring, &malloced, + operate, args) + ?: last_errstring != NULL); - int result = last_errstring != NULL; if (result && malloced) free ((char *) last_errstring); -- 2.7.4