diff options
Diffstat (limited to 'libdwfl/linux-kernel-modules.c')
| -rw-r--r-- | libdwfl/linux-kernel-modules.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/libdwfl/linux-kernel-modules.c b/libdwfl/linux-kernel-modules.c index bafe53c0..9bf5f255 100644 --- a/libdwfl/linux-kernel-modules.c +++ b/libdwfl/linux-kernel-modules.c @@ -225,12 +225,12 @@ report_kernel (Dwfl *dwfl, const char **release, mod->e_type = ET_DYN; } + free (fname); + if (!report || result < 0) close (fd); } - free (fname); - return result; } @@ -247,7 +247,7 @@ report_kernel_archive (Dwfl *dwfl, const char **release, char *archive; if (unlikely ((*release)[0] == '/' ? asprintf (&archive, "%s/debug.a", *release) - : asprintf (&archive, MODULEDIRFMT "/debug.a", *release)) < 0) + : asprintf (&archive, MODULEDIRFMT "/debug.a", *release) < 0)) return ENOMEM; int fd = try_kernel_name (dwfl, &archive, false); |
