summaryrefslogtreecommitdiffstats
path: root/libexec/rtld-elf/rtld.c
diff options
context:
space:
mode:
authorkan <kan@FreeBSD.org>2010-06-03 00:25:43 +0000
committerkan <kan@FreeBSD.org>2010-06-03 00:25:43 +0000
commit1ae09bbbb64d7426813430300b12dd003f3a623f (patch)
treeee4b2dac4b12882272ec0cc38d8a1483af4a757e /libexec/rtld-elf/rtld.c
parent3112aa25052f36656d511d04474d1bf95ca17fbc (diff)
downloadFreeBSD-src-1ae09bbbb64d7426813430300b12dd003f3a623f.zip
FreeBSD-src-1ae09bbbb64d7426813430300b12dd003f3a623f.tar.gz
Plug possible memory leak.
Found by: Coverity MFC after: 2 weeks
Diffstat (limited to 'libexec/rtld-elf/rtld.c')
-rw-r--r--libexec/rtld-elf/rtld.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/libexec/rtld-elf/rtld.c b/libexec/rtld-elf/rtld.c
index c303483..8082656 100644
--- a/libexec/rtld-elf/rtld.c
+++ b/libexec/rtld-elf/rtld.c
@@ -1530,8 +1530,10 @@ load_object(const char *name, const Obj_Entry *refobj, int flags)
close(fd);
return obj;
}
- if (flags & RTLD_LO_NOLOAD)
+ if (flags & RTLD_LO_NOLOAD) {
+ free(path);
return (NULL);
+ }
/* First use of this object, so we must map it in */
obj = do_load_object(fd, name, path, &sb, flags);
OpenPOWER on IntegriCloud