Daniel P. Berrangé <berra...@redhat.com> wrote: > ping: anyone willing to give a review of this one > > On Wed, May 05, 2021 at 11:36:58AM +0100, Daniel P. Berrangé wrote: >> The GDateTime APIs provided by GLib avoid portability pitfalls, such >> as some platforms where 'struct timeval.tv_sec' field is still 'long' >> instead of 'time_t'. When combined with automatic cleanup, GDateTime >> often results in simpler code too. >> >> Signed-off-by: Daniel P. Berrangé <berra...@redhat.com> >> --- >> hw/net/rocker/rocker.h | 11 +++-------- >> 1 file changed, 3 insertions(+), 8 deletions(-) >> >> diff --git a/hw/net/rocker/rocker.h b/hw/net/rocker/rocker.h >> index 941c932265..412fa44d01 100644 >> --- a/hw/net/rocker/rocker.h >> +++ b/hw/net/rocker/rocker.h >> @@ -25,14 +25,9 @@ >> #if defined(DEBUG_ROCKER) >> # define DPRINTF(fmt, ...) \ >> do { \ >> - struct timeval tv; \ >> - char timestr[64]; \ >> - time_t now; \ >> - gettimeofday(&tv, NULL); \ >> - now = tv.tv_sec; \ >> - strftime(timestr, sizeof(timestr), "%T", localtime(&now)); \ >> - fprintf(stderr, "%s.%06ld ", timestr, tv.tv_usec); \ >> - fprintf(stderr, "ROCKER: " fmt, ## __VA_ARGS__); \ >> + g_autoptr(GDateTime) now = g_date_time_new_now_local(); \ >> + g_autofree char *nowstr = g_date_time_format(now, "%T.%f");\ >> + fprintf(stderr, "%s ROCKER: " fmt, nowstr, ## __VA_ARGS__);\ >> } while (0) >> #else >> static inline GCC_FMT_ATTR(1, 2) int DPRINTF(const char *fmt, ...)
Reviewed-by: Juan Quintela <quint...@redhat.com>