mirror of
https://github.com/kdave/btrfs-progs
synced 2025-01-14 01:31:02 +00:00
btrfs-progs: receive: fix minor resource leak
Resolves-coverity-id: 1302985 Signed-off-by: David Sterba <dsterba@suse.cz>
This commit is contained in:
parent
add9d7fe4b
commit
f51b76109f
@ -1002,7 +1002,7 @@ int cmd_receive(int argc, char **argv)
|
||||
struct btrfs_receive r;
|
||||
int receive_fd = fileno(stdin);
|
||||
u64 max_errors = 1;
|
||||
int ret;
|
||||
int ret = 0;
|
||||
|
||||
memset(&r, 0, sizeof(r));
|
||||
r.mnt_fd = -1;
|
||||
@ -1039,10 +1039,11 @@ int cmd_receive(int argc, char **argv)
|
||||
max_errors = arg_strtou64(optarg);
|
||||
break;
|
||||
case 'm':
|
||||
free(realmnt);
|
||||
realmnt = strdup(optarg);
|
||||
if (!realmnt) {
|
||||
fprintf(stderr, "ERROR: couldn't allocate realmnt.\n");
|
||||
return 1;
|
||||
goto out;
|
||||
}
|
||||
break;
|
||||
case '?':
|
||||
@ -1061,12 +1062,15 @@ int cmd_receive(int argc, char **argv)
|
||||
receive_fd = open(fromfile, O_RDONLY | O_NOATIME);
|
||||
if (receive_fd < 0) {
|
||||
fprintf(stderr, "ERROR: failed to open %s\n", fromfile);
|
||||
return 1;
|
||||
goto out;
|
||||
}
|
||||
}
|
||||
|
||||
ret = do_receive(&r, tomnt, realmnt, receive_fd, max_errors);
|
||||
|
||||
out:
|
||||
free(realmnt);
|
||||
|
||||
return !!ret;
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user