[git commit branch/0.9.33] libdl: fix memleak for local scope of dlopened's needed libraries

Bernhard Reutner-Fischer rep.dot.nop at gmail.com
Thu Feb 23 18:47:38 UTC 2012


commit: http://git.uclibc.org/uClibc/commit/?id=45b0b1b56793969b8cdf16411fba6e0c9e87559d
branch: http://git.uclibc.org/uClibc/commit/?id=refs/heads/0.9.33

Signed-off-by: Filippo Arcidiacono <filippo.arcidiacono at st.com>
Signed-off-by: Carmelo Amoroso <carmelo.amoroso at st.com>
Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop at gmail.com>
---
 ldso/libdl/libdl.c |    2 ++
 1 files changed, 2 insertions(+), 0 deletions(-)

diff --git a/ldso/libdl/libdl.c b/ldso/libdl/libdl.c
index 086a059..51bcf7d 100644
--- a/ldso/libdl/libdl.c
+++ b/ldso/libdl/libdl.c
@@ -1011,6 +1011,8 @@ static int do_dlclose(void *vhandle, int need_fini)
 				}
 			}
 			free(tpnt->libname);
+			if (handle->dyn != tpnt)
+				free(tpnt->symbol_scope.r_list);
 			free(tpnt);
 		}
 	}


More information about the uClibc-cvs mailing list