Check for gmtime_r. Use gmtime_r when available. (#511807, Sebastian

2008-01-28  Matthias Clasen  <mclasen@redhat.com>

        * configure.in: Check for gmtime_r.
        * glib/gtimer.c: Use gmtime_r when available.  (#511807,
        Sebastian Dröge)



svn path=/trunk/; revision=6393
This commit is contained in:
Matthias Clasen 2008-01-28 06:27:28 +00:00 committed by Matthias Clasen
parent cf9b04e7df
commit c4bad41855
2 changed files with 17 additions and 3 deletions

View File

@ -1,3 +1,9 @@
2008-01-28 Matthias Clasen <mclasen@redhat.com>
* configure.in: Check for gmtime_r.
* glib/gtimer.c: Use gmtime_r when available. (#511807,
Sebastian Dröge)
2008-01-27 Matthias Clasen <mclasen@redhat.com>
* glib/gnode.[hc]: Move docs inline. (#316260, Philippe Blain)

View File

@ -402,16 +402,24 @@ gchar *
g_time_val_to_iso8601 (GTimeVal *time_)
{
gchar *retval;
#ifdef HAVE_GMTIME_R
struct tm tm_;
#endif
g_return_val_if_fail (time_->tv_usec >= 0 && time_->tv_usec < G_USEC_PER_SEC, NULL);
#define ISO_8601_LEN 21
#define ISO_8601_FORMAT "%Y-%m-%dT%H:%M:%SZ"
retval = g_new0 (gchar, ISO_8601_LEN + 1);
strftime (retval, ISO_8601_LEN,
ISO_8601_FORMAT,
gmtime (&(time_->tv_sec)));
#ifdef HAVE_GMTIME_R
gmtime_r (&(time_->tv_sec), &tm_)
#else
gmtime (&(time_->tv_sec))
#endif
);
return retval;
}