[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]

Re: [libvirt] [PATCH] esx_vi: remove unreachable code



Matthias Bolte wrote:
> Oops, however that happened... good find. The clang analyzer seems to
> be a valuable tool.
>
> The fix for this is to swap "goto cleanup;" and "result = -1;" (see
> attached patch).
>
> Matthias
>
> diff --git a/src/esx/esx_vi.c b/src/esx/esx_vi.c
> index 724e945..0919774 100644
> --- a/src/esx/esx_vi.c
> +++ b/src/esx/esx_vi.c
> @@ -764,9 +764,9 @@ esxVI_Enumeration_Deserialize(virConnectPtr conn,
>      return result;
>
>    failure:
> -    goto cleanup;
> -
>      result = -1;
> +
> +    goto cleanup;
>  }

Of course!  I should have seen that.
Here's the corrected patch:

>From b29fab8d6a8eece3ecea14b5cfa598d3b90b14e3 Mon Sep 17 00:00:00 2001
From: Matthias Bolte <matthias bolte googlemail com>
Date: Thu, 3 Sep 2009 16:35:47 +0200
Subject: [PATCH] esx_vi: return -1 upon failure, as intended

* src/esx/esx_vi.c (esxVI_Enumeration_Deserialize): Fix
reversed goto and result=-1 statements.
---
 src/esx/esx_vi.c |    3 +--
 1 files changed, 1 insertions(+), 2 deletions(-)

diff --git a/src/esx/esx_vi.c b/src/esx/esx_vi.c
index 0da908b..10dd7fd 100644
--- a/src/esx/esx_vi.c
+++ b/src/esx/esx_vi.c
@@ -856,9 +856,8 @@ esxVI_Enumeration_Deserialize(virConnectPtr conn,
     return result;

   failure:
-    goto cleanup;
-
     result = -1;
+    goto cleanup;
 }


--
1.6.4.2.395.ge3d52


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]