From: Mark Wielaard Date: Sat, 4 Dec 2021 01:57:24 +0000 (+0100) Subject: debuginfod: Fix debuginfod_pool leak X-Git-Tag: elfutils-0.187~73 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=b947f95c2ce7520bf439386209c95454f1add69e;p=thirdparty%2Felfutils.git debuginfod: Fix debuginfod_pool leak gcc address sanitizer detected a dangling debuginfod_client handler when debuginfod exits. Make sure to groom the debuginfod client pool before exit after all threads are done. Signed-off-by: Mark Wielaard --- diff --git a/debuginfod/ChangeLog b/debuginfod/ChangeLog index 0ced28774..7a4840ff6 100644 --- a/debuginfod/ChangeLog +++ b/debuginfod/ChangeLog @@ -1,3 +1,7 @@ +2021-12-04 Mark Wielaard + + * debuginfod.cxx (main): Call debuginfod_pool_groom before exit. + 2021-12-08 Mark Wielaard * debuginfod.cxx (add_mhd_response_header): New function. diff --git a/debuginfod/debuginfod.cxx b/debuginfod/debuginfod.cxx index 438e874cd..35424e47b 100644 --- a/debuginfod/debuginfod.cxx +++ b/debuginfod/debuginfod.cxx @@ -4021,6 +4021,8 @@ main (int argc, char *argv[]) } } + debuginfod_pool_groom (); + // NB: no problem with unconditional free here - an earlier failed regcomp would exit program (void) regfree (& file_include_regex); (void) regfree (& file_exclude_regex);