From 6d4fb3dcc13fdd3e04917bc656c8926116d13e44 Mon Sep 17 00:00:00 2001 From: Tsutomu Itoh Date: Wed, 19 Oct 2016 11:35:03 +0900 Subject: btrfs-progs: send: fix handling of multiple snapshots (-p option) We cannot send multiple snapshots at once by -p option. [before] # btrfs send -f /tmp/data0 -p Snap0 Snap[12] At subvol Snap1 At subvol Snap2 ERROR: parent determination failed for 0 # [after] # btrfs send -f /tmp/data0 -p Snap0 Snap[12] At subvol Snap1 At subvol Snap2 # Signed-off-by: Tsutomu Itoh Signed-off-by: David Sterba --- cmds-send.c | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/cmds-send.c b/cmds-send.c index dfdfe018..2a8a697a 100644 --- a/cmds-send.c +++ b/cmds-send.c @@ -650,7 +650,7 @@ int cmd_send(int argc, char **argv) goto out; } - if (!full_send && !parent_root_id) { + if (!full_send && root_id) { ret = find_good_parent(&send, root_id, &parent_root_id); if (ret < 0) { error("parent determination failed for %lld", @@ -673,7 +673,7 @@ int cmd_send(int argc, char **argv) if (ret < 0) goto out; - if (!full_send) { + if (!full_send && root_id) { /* done with this subvol, so add it to the clone sources */ ret = add_clone_source(&send, root_id); if (ret < 0) { @@ -681,8 +681,6 @@ int cmd_send(int argc, char **argv) goto out; } } - - parent_root_id = 0; } ret = 0; -- cgit v1.2.3