OSDN Git Service

libdl: fix memleak for local scope of dlopened's needed libraries
authorFilippo Arcidiacono <filippo.arcidiacono@st.com>
Fri, 3 Feb 2012 15:41:44 +0000 (16:41 +0100)
committerCarmelo Amoroso <carmelo.amoroso@st.com>
Thu, 9 Feb 2012 14:27:40 +0000 (15:27 +0100)
Signed-off-by: Filippo Arcidiacono <filippo.arcidiacono@st.com>
Signed-off-by: Carmelo Amoroso <carmelo.amoroso@st.com>
ldso/libdl/libdl.c

index 086a059..51bcf7d 100644 (file)
@@ -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);
                }
        }