[libvirt PATCH 03/14] vbox: StartMachine: overwrite ret less often
Martin Kletzander
mkletzan at redhat.com
Thu Sep 24 07:46:00 UTC 2020
On Wed, Sep 23, 2020 at 08:14:52PM +0200, Ján Tomko wrote:
>Use goto to jump over the ret = 0 assignment
>as is usual in rest of the code.
>
>Signed-off-by: Ján Tomko <jtomko at redhat.com>
>---
> src/vbox/vbox_common.c | 12 +++++++-----
> 1 file changed, 7 insertions(+), 5 deletions(-)
>
>diff --git a/src/vbox/vbox_common.c b/src/vbox/vbox_common.c
>index 9978741a64..99c7fbd117 100644
>--- a/src/vbox/vbox_common.c
>+++ b/src/vbox/vbox_common.c
>@@ -2090,7 +2090,7 @@ vboxStartMachine(virDomainPtr dom, int maxDomID, IMachine *machine, vboxIID *iid
> int ret = -1;
>
> if (!data->vboxObj)
>- return ret;
>+ return -1;
>
> VBOX_UTF8_TO_UTF16("FRONTEND/Type", &keyTypeUtf16);
> gVBoxAPI.UIMachine.GetExtraData(machine, keyTypeUtf16, &valueTypeUtf16);
>@@ -2177,7 +2177,7 @@ vboxStartMachine(virDomainPtr dom, int maxDomID, IMachine *machine, vboxIID *iid
> if (NS_FAILED(rc)) {
> virReportError(VIR_ERR_OPERATION_FAILED, "%s",
> _("OpenRemoteSession/LaunchVMProcess failed, domain can't be started"));
>- ret = -1;
>+ goto cleanup;
> } else {
> PRBool completed = 0;
> resultCodeUnion resultCode;
>@@ -2186,19 +2186,21 @@ vboxStartMachine(virDomainPtr dom, int maxDomID, IMachine *machine, vboxIID *iid
> rc = gVBoxAPI.UIProgress.GetCompleted(progress, &completed);
> if (NS_FAILED(rc)) {
> /* error */
>- ret = -1;
>+ goto cleanup;
This one is not semantically equivalent. But since I do not know enough about
the vbox driver I cannot tell whether it makes sense to keep the current
behaviour. It looks like it also fixes it but I cannot be sure enough.
Let's wait for a couple of days if someone knows more about that and if not,
then consider this
Reviewed-by: Martin Kletzander <mkletzan at redhat.com>
and let's see if someone experiences issues after that.
> }
> gVBoxAPI.UIProgress.GetResultCode(progress, &resultCode);
> if (RC_FAILED(resultCode)) {
> /* error */
>- ret = -1;
>+ goto cleanup;
> } else {
> /* all ok set the domid */
> dom->id = maxDomID + 1;
>- ret = 0;
> }
> }
>
>+ ret = 0;
>+
>+ cleanup:
> VBOX_RELEASE(progress);
>
> gVBoxAPI.UISession.Close(data->vboxSession);
>--
>2.26.2
>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 833 bytes
Desc: not available
URL: <http://listman.redhat.com/archives/libvir-list/attachments/20200924/4cd1358e/attachment-0001.sig>
More information about the libvir-list
mailing list