]> xenbits.xensource.com Git - libvirt.git/commit
qemu: snapshot: Restructure control flow to detect errors sooner and work around...
authorPeter Krempa <pkrempa@redhat.com>
Mon, 9 Jan 2023 13:01:59 +0000 (14:01 +0100)
committerPeter Krempa <pkrempa@redhat.com>
Mon, 9 Jan 2023 13:13:25 +0000 (14:13 +0100)
commit64366c005693a2fc389e3f61dbc68259ead2c260
tree034faa92d7c835a5fb085d9b24ad239bd4d0f9df
parentbb80344fd00263b88890712152084502ac516cc8
qemu: snapshot: Restructure control flow to detect errors sooner and work around compiler

Some compilers aren't happy when an automatically freed variable is used
just to free something (thus it's only assigned in the code):

When compiling qemuSnapshotDelete after recent commits they complain:

../src/qemu/qemu_snapshot.c:3153:61: error: variable 'delData' set but not used [-Werror,-Wunused-but-set-variable]
                g_autoslist(qemuSnapshotDeleteExternalData) delData = NULL;
                                                            ^

To work around the issue we can restructure the code which also has the
following semantic implications:
 - since qemuSnapshotDeleteExternalPrepare does validation we error out
   sooner than attempting to start the VM

 - we read the temporary variable at least in one code path

Fixes: 4a4d89a9252
Signed-off-by: Peter Krempa <pkrempa@redhat.com>
Reviewed-by: Pavel Hrdina <phrdina@redhat.com>
src/qemu/qemu_snapshot.c