summaryrefslogtreecommitdiff
path: root/rts/Linker.c
diff options
context:
space:
mode:
authorAustin Seipp <austin@well-typed.com>2014-04-29 09:09:25 -0500
committerAustin Seipp <austin@well-typed.com>2014-04-29 14:08:30 -0500
commitb7278d3d7bbe384eee7538b1e50bb741e99fb01d (patch)
tree89bc76270c7b670629424b4cf69e77eaa3dcf210 /rts/Linker.c
parente597f5feb065c075c86715e24bf0ebd341fa8b9e (diff)
downloadhaskell-b7278d3d7bbe384eee7538b1e50bb741e99fb01d.tar.gz
rts: Fix memory leak when loading ELF objects
Issue discovered by Coverity Scan, CID 43168. Signed-off-by: Austin Seipp <austin@well-typed.com>
Diffstat (limited to 'rts/Linker.c')
-rw-r--r--rts/Linker.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/rts/Linker.c b/rts/Linker.c
index 146e2d52b0..ea7c1c67b9 100644
--- a/rts/Linker.c
+++ b/rts/Linker.c
@@ -1900,6 +1900,7 @@ addDLL( pathchar *dll_name )
// success -- try to dlopen the first named file
IF_DEBUG(linker, debugBelch("match%s\n",""));
line[match[2].rm_eo] = '\0';
+ stgFree((void*)errmsg); // Free old message before creating new one
errmsg = internal_dlopen(line+match[2].rm_so);
break;
}