mirror of
https://gitlab.com/libvirt/libvirt.git
synced 2025-03-07 17:28:15 +00:00
util: add compat wrapper for g_fsync
g_fsync isn't available until 2.63 so we need a compat wrapper temporarily. Reviewed-by: Fabiano Fidêncio <fidencio@redhat.com> Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
This commit is contained in:
parent
2c33532423
commit
41d9bba57e
@ -1504,6 +1504,7 @@ virSecurityManagerVerify;
|
|||||||
|
|
||||||
|
|
||||||
# util/glibcompat.h
|
# util/glibcompat.h
|
||||||
|
vir_g_fsync;
|
||||||
vir_g_strdup_printf;
|
vir_g_strdup_printf;
|
||||||
vir_g_strdup_vprintf;
|
vir_g_strdup_vprintf;
|
||||||
|
|
||||||
|
@ -19,11 +19,13 @@
|
|||||||
#include <config.h>
|
#include <config.h>
|
||||||
|
|
||||||
#include <stdlib.h>
|
#include <stdlib.h>
|
||||||
|
#include <unistd.h>
|
||||||
|
|
||||||
#include "glibcompat.h"
|
#include "glibcompat.h"
|
||||||
|
|
||||||
#undef g_strdup_printf
|
#undef g_strdup_printf
|
||||||
#undef g_strdup_vprintf
|
#undef g_strdup_vprintf
|
||||||
|
#undef g_fsync
|
||||||
|
|
||||||
/* Due to a bug in glib, g_strdup_printf() nor g_strdup_vprintf()
|
/* Due to a bug in glib, g_strdup_printf() nor g_strdup_vprintf()
|
||||||
* abort on OOM. It's fixed in glib's upstream. Provide our own
|
* abort on OOM. It's fixed in glib's upstream. Provide our own
|
||||||
@ -51,3 +53,14 @@ vir_g_strdup_vprintf(const char *msg, va_list args)
|
|||||||
abort();
|
abort();
|
||||||
return ret;
|
return ret;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
gint
|
||||||
|
vir_g_fsync(gint fd)
|
||||||
|
{
|
||||||
|
#ifdef G_OS_WIN32
|
||||||
|
return _commit(fd);
|
||||||
|
#else
|
||||||
|
return fsync(fd);
|
||||||
|
#endif
|
||||||
|
}
|
||||||
|
@ -25,8 +25,13 @@ char *vir_g_strdup_printf(const char *msg, ...)
|
|||||||
G_GNUC_PRINTF(1, 2);
|
G_GNUC_PRINTF(1, 2);
|
||||||
char *vir_g_strdup_vprintf(const char *msg, va_list args)
|
char *vir_g_strdup_vprintf(const char *msg, va_list args)
|
||||||
G_GNUC_PRINTF(1, 0);
|
G_GNUC_PRINTF(1, 0);
|
||||||
|
gint vir_g_fsync(gint fd);
|
||||||
|
|
||||||
#if !GLIB_CHECK_VERSION(2, 64, 0)
|
#if !GLIB_CHECK_VERSION(2, 64, 0)
|
||||||
# define g_strdup_printf vir_g_strdup_printf
|
# define g_strdup_printf vir_g_strdup_printf
|
||||||
# define g_strdup_vprintf vir_g_strdup_vprintf
|
# define g_strdup_vprintf vir_g_strdup_vprintf
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
#if !GLIB_CHECK_VERSION(2, 63, 0)
|
||||||
|
# define g_fsync vir_g_fsync
|
||||||
|
#endif
|
||||||
|
Loading…
x
Reference in New Issue
Block a user