summaryrefslogtreecommitdiff
path: root/fs/sandbox
diff options
context:
space:
mode:
authorTom Rini <trini@konsulko.com>2016-10-17 21:09:32 -0400
committerSimon Glass <sjg@chromium.org>2016-12-02 10:37:47 -0700
commit0317724e6c5db6229dbdc03dd9c9b68a559973fe (patch)
treebf9dd795848f7d1c2a8202c5888a51563af1ecdc /fs/sandbox
parenta982b6f5149387d931442837f598c9589bbd12bf (diff)
sandboxfs: Fix resource leak
Now that we free resources in sandbox_fs_ls Coverity is letting us know that in some cases we might leak. So in case of error we should still let os_dirent_free free anything that was allocated. Fixes: 86167089b71c ("sandbox/fs: Free memory allocated by os_dirent_ls") Reported-by: Coverity (CID: 153450) Cc: Stefan BrĂ¼ns <stefan.bruens@rwth-aachen.de> Cc: Simon Glass <sjg@chromium.org> Signed-off-by: Tom Rini <trini@konsulko.com> Reviewed-by: Simon Glass <sjg@chromium.org>
Diffstat (limited to 'fs/sandbox')
-rw-r--r--fs/sandbox/sandboxfs.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/fs/sandbox/sandboxfs.c b/fs/sandbox/sandboxfs.c
index cd10fd6845f..ca802613370 100644
--- a/fs/sandbox/sandboxfs.c
+++ b/fs/sandbox/sandboxfs.c
@@ -88,15 +88,16 @@ int sandbox_fs_ls(const char *dirname)
ret = os_dirent_ls(dirname, &head);
if (ret)
- return ret;
+ goto out;
for (node = head; node; node = node->next) {
printf("%s %10lu %s\n", os_dirent_get_typename(node->type),
node->size, node->name);
}
+out:
os_dirent_free(head);
- return 0;
+ return ret;
}
int sandbox_fs_exists(const char *filename)