mirror of
https://github.com/xemu-project/xemu.git
synced 2024-11-23 11:39:53 +00:00
error-report: replace deprecated g_get_current_time() with glib >= 2.62
According to GLib API: g_get_current_time has been deprecated since version 2.62 and should not be used in newly-written code. GTimeVal is not year-2038-safe. Use g_get_real_time() instead. Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com> Message-Id: <20220323155743.1585078-14-marcandre.lureau@redhat.com> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
This commit is contained in:
parent
6e9396696f
commit
73dab893b5
@ -145,6 +145,16 @@ qemu_g_test_slow(void)
|
||||
#define g_test_thorough() qemu_g_test_slow()
|
||||
#define g_test_quick() (!qemu_g_test_slow())
|
||||
|
||||
#if GLIB_CHECK_VERSION(2,62,0)
|
||||
static inline gchar *
|
||||
g_date_time_format_iso8601_compat(GDateTime *datetime)
|
||||
{
|
||||
return g_date_time_format_iso8601(datetime);
|
||||
}
|
||||
|
||||
#define g_date_time_format_iso8601 g_date_time_format_iso8601_compat
|
||||
#endif
|
||||
|
||||
#pragma GCC diagnostic pop
|
||||
|
||||
#endif
|
||||
|
@ -180,6 +180,19 @@ static void print_loc(void)
|
||||
}
|
||||
}
|
||||
|
||||
static char *
|
||||
real_time_iso8601(void)
|
||||
{
|
||||
#if GLIB_CHECK_VERSION(2, 62, 0)
|
||||
g_autoptr(GDateTime) dt = g_date_time_new_from_unix_utc(g_get_real_time());
|
||||
return g_date_time_format_iso8601(dt);
|
||||
#else
|
||||
GTimeVal tv;
|
||||
g_get_current_time(&tv);
|
||||
return g_time_val_to_iso8601(&tv);
|
||||
#endif
|
||||
}
|
||||
|
||||
/*
|
||||
* Print a message to current monitor if we have one, else to stderr.
|
||||
* @report_type is the type of message: error, warning or informational.
|
||||
@ -189,12 +202,10 @@ static void print_loc(void)
|
||||
*/
|
||||
static void vreport(report_type type, const char *fmt, va_list ap)
|
||||
{
|
||||
GTimeVal tv;
|
||||
gchar *timestr;
|
||||
|
||||
if (message_with_timestamp && !monitor_cur()) {
|
||||
g_get_current_time(&tv);
|
||||
timestr = g_time_val_to_iso8601(&tv);
|
||||
timestr = real_time_iso8601();
|
||||
error_printf("%s ", timestr);
|
||||
g_free(timestr);
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user