
On Fri, Nov 06, 2009 at 04:28:04AM +0100, Matthias Bolte wrote:
--- src/phyp/phyp_driver.c | 35 ++++++++++++----------------------- 1 files changed, 12 insertions(+), 23 deletions(-)
diff --git a/src/phyp/phyp_driver.c b/src/phyp/phyp_driver.c index ab5af17..1529c24 100644 --- a/src/phyp/phyp_driver.c +++ b/src/phyp/phyp_driver.c @@ -508,7 +508,7 @@ phypGetLparNAME(LIBSSH2_SESSION * session, const char *managed_system,
ret = phypExec(session, cmd, &exit_status, conn);
- if (ret == NULL) + if (exit_status < 0 || ret == NULL) goto err;
char *char_ptr = strchr(ret, '\n'); @@ -516,9 +516,6 @@ phypGetLparNAME(LIBSSH2_SESSION * session, const char *managed_system, if (char_ptr) *char_ptr = '\0';
- if (exit_status < 0 || ret == NULL) - goto err; - VIR_FREE(cmd); return ret;
@@ -593,16 +590,13 @@ phypGetLparMem(virConnectPtr conn, const char *managed_system, int lpar_id,
ret = phypExec(session, cmd, &exit_status, conn);
- if (ret == NULL) + if (exit_status < 0 || ret == NULL) goto err;
- char *mem_char_ptr = strchr(ret, '\n'); - - if (mem_char_ptr) - *mem_char_ptr = '\0'; + char_ptr = strchr(ret, '\n');
- if (exit_status < 0) - goto err; + if (char_ptr) + *char_ptr = '\0';
if (virStrToLong_i(ret, &char_ptr, 10, &memory) == -1) goto err; @@ -641,6 +635,7 @@ phypGetLparCPUGeneric(virConnectPtr conn, const char *managed_system, LIBSSH2_SESSION *session = connection_data->session; char *cmd = NULL; char *ret = NULL; + char *char_ptr; int exit_status = 0; int vcpus = 0;
@@ -663,10 +658,10 @@ phypGetLparCPUGeneric(virConnectPtr conn, const char *managed_system, } ret = phypExec(session, cmd, &exit_status, conn);
- if (ret == NULL) + if (exit_status < 0 || ret == NULL) goto err;
- char *char_ptr = strchr(ret, '\n'); + char_ptr = strchr(ret, '\n');
if (char_ptr) *char_ptr = '\0'; @@ -674,9 +669,6 @@ phypGetLparCPUGeneric(virConnectPtr conn, const char *managed_system, if (virStrToLong_i(ret, &char_ptr, 10, &vcpus) == -1) goto err;
- if (exit_status < 0) - goto err; - VIR_FREE(cmd); VIR_FREE(ret); return (unsigned long) vcpus; @@ -708,16 +700,13 @@ phypGetRemoteSlot(virConnectPtr conn, const char *managed_system, } ret = phypExec(session, cmd, &exit_status, conn);
- if (ret == NULL) + if (exit_status < 0 || ret == NULL) goto err;
- char *char_ptr2 = strchr(ret, '\n'); - - if (char_ptr2) - *char_ptr2 = '\0'; + char_ptr = strchr(ret, '\n');
- if (exit_status < 0) - goto err; + if (char_ptr) + *char_ptr = '\0';
if (virStrToLong_i(ret, &char_ptr, 10, &remote_slot) == -1) goto err;
ACK, also includes other cleanups ! Daniel -- Daniel Veillard | libxml Gnome XML XSLT toolkit http://xmlsoft.org/ daniel@veillard.com | Rpmfind RPM search engine http://rpmfind.net/ http://veillard.com/ | virtualization library http://libvirt.org/