
On Thu, Apr 15, 2010 at 08:41:07AM -0600, Eric Blake wrote:
On 04/13/2010 10:25 AM, Jiri Denemark wrote:
--- src/esx/esx_driver.c | 43 ++++++++++++------------- src/nwfilter/nwfilter_driver.c | 4 ++- src/qemu/qemu_driver.c | 68 +++++++++++++++++++--------------------- src/storage/storage_driver.c | 6 +--- src/vbox/vbox_tmpl.c | 41 ++++++++++++++++------- src/xen/xend_internal.c | 4 ++ 6 files changed, 88 insertions(+), 78 deletions(-)
diff --git a/src/esx/esx_driver.c b/src/esx/esx_driver.c index 4ed9890..d9a1cfd 100644 --- a/src/esx/esx_driver.c +++ b/src/esx/esx_driver.c @@ -3296,7 +3296,7 @@ esxDomainIsPersistent(virDomainPtr domain ATTRIBUTE_UNUSED)
static virDomainSnapshotPtr esxDomainSnapshotCreateXML(virDomainPtr domain, const char *xmlDesc, - unsigned int flags ATTRIBUTE_UNUSED) + unsigned int flags) { esxPrivate *priv = domain->conn->privateData; virDomainSnapshotDefPtr def = NULL; @@ -3308,6 +3308,8 @@ esxDomainSnapshotCreateXML(virDomainPtr domain, const char *xmlDesc, esxVI_TaskInfoState taskInfoState; virDomainSnapshotPtr snapshot = NULL;
+ virCheckFlags(0, NULL);
I scanned through the patch, and didn't see any instances where we are calling virCheckFlags after non-trivial work. It is something to be aware of when using the macro in the future, since:
{ ptr *foo = somethingThatMallocs(); virCheckFlags(0, NULL);
would be a memory leak, masked because the return is hidden inside the virCheckFlags macro.
But the alternative, of making virCheckFlags result in a bool, and making all callers use:
if (virBadFlags(0)) return NULL;
is not as aesthetic. So:
ACK.
Agreed it's the right time, and internal.h is the right place for the macro, AC :-) thanks ! 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/