diff options
Diffstat (limited to 'usr/src')
-rw-r--r-- | usr/src/cmd/sgs/packages/common/SUNWonld-README | 1 | ||||
-rw-r--r-- | usr/src/cmd/sgs/rtld/common/remove.c | 4 |
2 files changed, 5 insertions, 0 deletions
diff --git a/usr/src/cmd/sgs/packages/common/SUNWonld-README b/usr/src/cmd/sgs/packages/common/SUNWonld-README index 0ebc25aa56..939f727235 100644 --- a/usr/src/cmd/sgs/packages/common/SUNWonld-README +++ b/usr/src/cmd/sgs/packages/common/SUNWonld-README @@ -1228,3 +1228,4 @@ Bugid Risk Synopsis versioning 6541004 hwcap filter processing can leak memory 5108874 elfdump SEGVs on bad object file +6547441 Uninitialized variable causes ld.so.1 to crash on object cleanup diff --git a/usr/src/cmd/sgs/rtld/common/remove.c b/usr/src/cmd/sgs/rtld/common/remove.c index c4ee9d6d68..25675e3286 100644 --- a/usr/src/cmd/sgs/rtld/common/remove.c +++ b/usr/src/cmd/sgs/rtld/common/remove.c @@ -859,6 +859,8 @@ remove_lmc(Lm_list *lml, Rt_map *clmp, Lm_cntl *lmc, Aliste lmco, if (((ghp = hdl_create(lml, lmc->lc_head, 0, 0)) == 0) || (hdl_initialize(ghp, lmc->lc_head, 0, 0) == 0)) lmc->lc_flags &= ~LMC_FLG_RELOCATING; + } else { + ghp = 0; } /* @@ -875,6 +877,8 @@ remove_lmc(Lm_list *lml, Rt_map *clmp, Lm_cntl *lmc, Aliste lmco, return; } + ASSERT(ghp != 0); + /* * As the objects of this handle are being forcibly removed, first * remove any associations to objects on parent link-map control |