
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. -- Eric Blake eblake@redhat.com +1-801-349-2682 Libvirt virtualization library http://libvirt.org