[PATCH v2 3/4] virsh: remove variable 'ret' and 'inactive'
Michal Prívozník
mprivozn at redhat.com
Fri Sep 24 08:02:07 UTC 2021
On 9/24/21 1:49 AM, Kristina Hanicova wrote:
> Signed-off-by: Kristina Hanicova <khanicov at redhat.com>
> ---
> tools/virsh-interface.c | 15 ++++++---------
> tools/virsh-network.c | 17 ++++++-----------
> 2 files changed, 12 insertions(+), 20 deletions(-)
>
> diff --git a/tools/virsh-interface.c b/tools/virsh-interface.c
> index 4bcc59b580..f402119b68 100644
> --- a/tools/virsh-interface.c
> +++ b/tools/virsh-interface.c
> @@ -485,26 +485,23 @@ static bool
> cmdInterfaceDumpXML(vshControl *ctl, const vshCmd *cmd)
> {
> virInterfacePtr iface;
1: this ^^^
> - bool ret = true;
> g_autofree char *dump = NULL;
> unsigned int flags = 0;
> - bool inactive = vshCommandOptBool(cmd, "inactive");
>
> - if (inactive)
> + if (vshCommandOptBool(cmd, "inactive"))
> flags |= VIR_INTERFACE_XML_INACTIVE;
>
> if (!(iface = virshCommandOptInterface(ctl, cmd, NULL)))
> return false;
>
> - dump = virInterfaceGetXMLDesc(iface, flags);
> - if (dump != NULL) {
> - vshPrint(ctl, "%s", dump);
> - } else {
> - ret = false;
> + if (!(dump = virInterfaceGetXMLDesc(iface, flags))) {
> + virInterfaceFree(iface);
> + return false;
> }
>
> + vshPrint(ctl, "%s", dump);
> virInterfaceFree(iface);
> - return ret;
> + return true;
I wonder whether we can declare an g_autoptr() cleanup for these public
APIs. We can't do that in public headers BUT we could do it in something
private, that's widely available (internal.h perhaps?). That way we
could turn [1] into g_autoptr() and drop both these free calls.
Obviously, that's orthogonal to what you are doing here and as such must
go into a standalone patchset. Just an idea I had.
Michal
More information about the libvir-list
mailing list