On Fri, Nov 06, 2009 at 10:49:00AM +0000, Matthew Booth wrote:
Dan Berrangé pointed out that using virBufferError() is preferred to
checking
virBufferContentAndReset() for NULL return. Also, this allows ADD_ARG_LIT to be
replaced with ADD_ARG, skipping an intermediate variable.
* src/qemu_qemu_conf.c: Cleanup usage of virBuffer in qemudBuildCommandLine
---
src/qemu/qemu_conf.c | 15 ++++-----------
1 files changed, 4 insertions(+), 11 deletions(-)
diff --git a/src/qemu/qemu_conf.c b/src/qemu/qemu_conf.c
index f010f4a..4a278e3 100644
--- a/src/qemu/qemu_conf.c
+++ b/src/qemu/qemu_conf.c
@@ -2182,7 +2182,6 @@ int qemudBuildCommandLine(virConnectPtr conn,
for (i = 0 ; i < def->nchannels ; i++) {
virBuffer buf = VIR_BUFFER_INITIALIZER;
- const char *argStr;
char id[16];
virDomainChrDefPtr channel = def->channels[i];
@@ -2199,24 +2198,18 @@ int qemudBuildCommandLine(virConnectPtr conn,
}
qemudBuildCommandLineChrDevChardevStr(channel, id, &buf);
- argStr = virBufferContentAndReset(&buf);
- if (argStr == NULL)
+ if (virBufferError(&buf))
goto error;
ADD_ARG_LIT("-chardev");
- ADD_ARG_LIT(argStr);
-
- VIR_FREE(argStr);
+ ADD_ARG(virBufferContentAndReset(&buf));
qemudBuildCommandLineChrDevTargetStr(channel, id, &buf);
- argStr = virBufferContentAndReset(&buf);
- if (argStr == NULL)
+ if (virBufferError(&buf))
goto error;
ADD_ARG_LIT("-net");
- ADD_ARG_LIT(argStr);
-
- VIR_FREE(argStr);
+ ADD_ARG(virBufferContentAndReset(&buf));
}
}
Okay as ADD_ARG'ed strings are freed after use, looks fine,
pushed, thanks !
Daniel
--
Daniel Veillard | libxml Gnome XML XSLT toolkit
http://xmlsoft.org/
daniel(a)veillard.com | Rpmfind RPM search engine
http://rpmfind.net/
http://veillard.com/ | virtualization library
http://libvirt.org/