Message ID | 20210505103702.521457-6-berrange@redhat.com |
---|---|
State | New |
Headers | show |
Series | replace all use of strftime() with g_date_time_format() | expand |
ping: anyone willing to review this On Wed, May 05, 2021 at 11:37:00AM +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é <berrange@redhat.com> > --- > io/channel-websock.c | 10 ++-------- > 1 file changed, 2 insertions(+), 8 deletions(-) > > diff --git a/io/channel-websock.c b/io/channel-websock.c > index 03c1f7cb62..70889bb54d 100644 > --- a/io/channel-websock.c > +++ b/io/channel-websock.c > @@ -177,15 +177,9 @@ qio_channel_websock_handshake_send_res(QIOChannelWebsock *ioc, > > static gchar *qio_channel_websock_date_str(void) > { > - struct tm tm; > - time_t now = time(NULL); > - char datebuf[128]; > + g_autoptr(GDateTime) now = g_date_time_new_now_utc(); > > - gmtime_r(&now, &tm); > - > - strftime(datebuf, sizeof(datebuf), "%a, %d %b %Y %H:%M:%S GMT", &tm); > - > - return g_strdup(datebuf); > + return g_date_time_format(now, "%a, %d %b %Y %H:%M:%S GMT"); > } > > static void qio_channel_websock_handshake_send_res_err(QIOChannelWebsock *ioc, > -- > 2.31.1 > Regards, Daniel
* Daniel P. Berrangé (berrange@redhat.com) wrote: > ping: anyone willing to review this > Reviewed-by: Dr. David Alan Gilbert <dgilbert@redhat.com> > On Wed, May 05, 2021 at 11:37:00AM +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é <berrange@redhat.com> > > --- > > io/channel-websock.c | 10 ++-------- > > 1 file changed, 2 insertions(+), 8 deletions(-) > > > > diff --git a/io/channel-websock.c b/io/channel-websock.c > > index 03c1f7cb62..70889bb54d 100644 > > --- a/io/channel-websock.c > > +++ b/io/channel-websock.c > > @@ -177,15 +177,9 @@ qio_channel_websock_handshake_send_res(QIOChannelWebsock *ioc, > > > > static gchar *qio_channel_websock_date_str(void) > > { > > - struct tm tm; > > - time_t now = time(NULL); > > - char datebuf[128]; > > + g_autoptr(GDateTime) now = g_date_time_new_now_utc(); > > > > - gmtime_r(&now, &tm); > > - > > - strftime(datebuf, sizeof(datebuf), "%a, %d %b %Y %H:%M:%S GMT", &tm); > > - > > - return g_strdup(datebuf); > > + return g_date_time_format(now, "%a, %d %b %Y %H:%M:%S GMT"); > > } > > > > static void qio_channel_websock_handshake_send_res_err(QIOChannelWebsock *ioc, > > -- > > 2.31.1 > > > > Regards, > Daniel > -- > |: https://berrange.com -o- https://www.flickr.com/photos/dberrange :| > |: https://libvirt.org -o- https://fstop138.berrange.com :| > |: https://entangle-photo.org -o- https://www.instagram.com/dberrange :|
diff --git a/io/channel-websock.c b/io/channel-websock.c index 03c1f7cb62..70889bb54d 100644 --- a/io/channel-websock.c +++ b/io/channel-websock.c @@ -177,15 +177,9 @@ qio_channel_websock_handshake_send_res(QIOChannelWebsock *ioc, static gchar *qio_channel_websock_date_str(void) { - struct tm tm; - time_t now = time(NULL); - char datebuf[128]; + g_autoptr(GDateTime) now = g_date_time_new_now_utc(); - gmtime_r(&now, &tm); - - strftime(datebuf, sizeof(datebuf), "%a, %d %b %Y %H:%M:%S GMT", &tm); - - return g_strdup(datebuf); + return g_date_time_format(now, "%a, %d %b %Y %H:%M:%S GMT"); } static void qio_channel_websock_handshake_send_res_err(QIOChannelWebsock *ioc,
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é <berrange@redhat.com> --- io/channel-websock.c | 10 ++-------- 1 file changed, 2 insertions(+), 8 deletions(-)