From 8b5147d5f33e73c44aa6a0fc0f47a7e3c6b7ffb9 Mon Sep 17 00:00:00 2001 From: David Sterba Date: Wed, 6 Jan 2016 14:22:34 +0100 Subject: btrfs-progs: use on-stack buffer in add_symbolic_link Also get rid of the unhandled memory allocation. Resolves-coverity-id: 1338298 Signed-off-by: David Sterba --- mkfs.c | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) (limited to 'mkfs.c') diff --git a/mkfs.c b/mkfs.c index 88c22891..ea584042 100644 --- a/mkfs.c +++ b/mkfs.c @@ -591,15 +591,14 @@ static int add_symbolic_link(struct btrfs_trans_handle *trans, u64 objectid, const char *path_name) { int ret; - u64 sectorsize = root->sectorsize; - char *buf = malloc(sectorsize); + char buf[PATH_MAX]; - ret = readlink(path_name, buf, sectorsize); + ret = readlink(path_name, buf, sizeof(buf)); if (ret <= 0) { fprintf(stderr, "readlink failed for %s\n", path_name); goto fail; } - if (ret >= sectorsize) { + if (ret >= sizeof(buf)) { fprintf(stderr, "symlink too long for %s\n", path_name); ret = -1; goto fail; @@ -609,7 +608,6 @@ static int add_symbolic_link(struct btrfs_trans_handle *trans, ret = btrfs_insert_inline_extent(trans, root, objectid, 0, buf, ret + 1); fail: - free(buf); return ret; } -- cgit v1.2.3