On Mon, Nov 28, 2022 at 16:33:40 +0900, Haruka Ohata wrote: > When running virsh snapshot-* command, such as snapshot-create-as / > snapshot-delete, it prints a result message. > On the other hand virsh snapshot-revert command doesn't print a result > message. > > So, This patch fixes to add message when running virsh snapshot-revert > command. > --- > # virsh snapshot-create-as vm1 test1 > Domain snapshot test01 created > # virsh snapshot-revert vm1 test1 > > # virsh snapshot-delete vm1 test1 > Domain snapshot test01 deleted > > # > --- > > Signed-off-by: Haruka Ohata <ohata.haruka@xxxxxxxxxxx> > --- > tests/virsh-snapshot | 3 +++ > tools/virsh-snapshot.c | 10 +++++++--- > 2 files changed, 10 insertions(+), 3 deletions(-) > > diff --git a/tests/virsh-snapshot b/tests/virsh-snapshot > index 4c64bb537b..b09273917b 100755 > --- a/tests/virsh-snapshot > +++ b/tests/virsh-snapshot > @@ -100,11 +100,14 @@ Domain snapshot s1 created > > Domain snapshot s3 created > Domain snapshot s2 created > +Domain snapshot s3 reverted > > Domain snapshot s6 created > Domain snapshot s5 created > +Domain snapshot s6 reverted > > Domain snapshot s4 created > +Domain snapshot s1 reverted > > Domain snapshot s7 created > Domain snapshot s8 created > diff --git a/tools/virsh-snapshot.c b/tools/virsh-snapshot.c > index 8fa64ba903..4576bf1020 100644 > --- a/tools/virsh-snapshot.c > +++ b/tools/virsh-snapshot.c > @@ -1745,7 +1745,7 @@ static const vshCmdOptDef opts_snapshot_revert[] = { > }; > > static bool > -cmdDomainSnapshotRevert(vshControl *ctl, const vshCmd *cmd) > +cmdSnapshotRevert(vshControl *ctl, const vshCmd *cmd) > { > g_autoptr(virshDomain) dom = NULL; > const char *name = NULL; > @@ -1783,7 +1783,11 @@ cmdDomainSnapshotRevert(vshControl *ctl, const vshCmd *cmd) > result = virDomainRevertToSnapshot(snapshot, flags); > } The full context above: result = virDomainRevertToSnapshot(snapshot, flags); if (result < 0 && force && last_error->code == VIR_ERR_SNAPSHOT_REVERT_RISKY) { flags |= VIR_DOMAIN_SNAPSHOT_REVERT_FORCE; vshResetLibvirtError(); result = virDomainRevertToSnapshot(snapshot, flags); } return result >= 0; > > - return result >= 0; > + if (virDomainRevertToSnapshot(snapshot, flags) < 0) > + vshError(ctl, _("Failed to revert snapshot %s"), name); > + else > + vshPrintExtra(ctl, _("Domain snapshot %s reverted\n"), name); > + return result; Here you call virDomainRevertToSnapshot again. That makes no sense as the call to revert the snapshot was already done. Additionally the logic above is required to handle the --force flag properly. You must make the decision based on the 'result' variable, not an additional call to virDomainRevertToSnapshot. > } > > /* > @@ -1916,7 +1920,7 @@ const vshCmdDef snapshotCmds[] = { > .flags = 0 > }, > {.name = "snapshot-revert", > - .handler = cmdDomainSnapshotRevert, > + .handler = cmdSnapshotRevert, Please separate the function name change to a separate commit as it doesn't relate to what this commit is doing. > .opts = opts_snapshot_revert, > .info = info_snapshot_revert, > .flags = 0 > -- > 2.38.1 >