From: Sukrit Bhatnagar Date: Fri, 13 Jul 2018 17:54:46 +0000 (+0530) Subject: util: file: define cleanup function using VIR_DEFINE_AUTOPTR_FUNC X-Git-Tag: v4.6.0-rc1~231 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=b6d96ec80ad8fb8a94a23a96ac96675a1ae4fbd1;p=thirdparty%2Flibvirt.git util: file: define cleanup function using VIR_DEFINE_AUTOPTR_FUNC Using the new VIR_DEFINE_AUTOPTR_FUNC macro defined in src/util/viralloc.h, define a new wrapper around an existing cleanup function which will be called when a variable declared with VIR_AUTOPTR macro goes out of scope. Also, drop the redundant viralloc.h include, since that has moved from the source module into the header. When a variable of type virFileWrapperFdPtr is declared using VIR_AUTOPTR, the function virFileWrapperFdFree will be run automatically on it when it goes out of scope. Signed-off-by: Sukrit Bhatnagar Reviewed-by: Erik Skultety --- diff --git a/src/util/virfile.c b/src/util/virfile.c index 378d03ecf0..2690e2d57f 100644 --- a/src/util/virfile.c +++ b/src/util/virfile.c @@ -67,7 +67,6 @@ #include "configmake.h" #include "intprops.h" -#include "viralloc.h" #include "vircommand.h" #include "virerror.h" #include "virfile.h" diff --git a/src/util/virfile.h b/src/util/virfile.h index 6f1e802fde..b30a1d3fbd 100644 --- a/src/util/virfile.h +++ b/src/util/virfile.h @@ -32,6 +32,7 @@ # include "internal.h" # include "virbitmap.h" # include "virstoragefile.h" +# include "viralloc.h" typedef enum { VIR_FILE_CLOSE_PRESERVE_ERRNO = 1 << 0, @@ -367,4 +368,6 @@ int virFileInData(int fd, int *inData, long long *length); +VIR_DEFINE_AUTOPTR_FUNC(virFileWrapperFd, virFileWrapperFdFree) + #endif /* __VIR_FILE_H */