Fixes regression introduced by "clean-up" done as part of commit 98ebcb4.
dummy must live as long as use the return value of localtime_r() since
that's just a pointer to it, and by putting it inside the block we made
dummy go out of scope right after localtime_r() returned, which messed
up the time values since when we poked at the struct the contents might
already have been overwritten.
Fixes #722
static gchar *
gst_clock_overlay_render_time (GstClockOverlay * overlay)
{
+#ifdef HAVE_LOCALTIME_R
+ struct tm dummy;
+#endif
struct tm *t;
time_t now;
gchar buf[256];
now = time (NULL);
#ifdef HAVE_LOCALTIME_R
- {
- struct tm dummy;
-
- /* Need to call tzset explicitly when calling localtime_r for changes
- * to the timezone between calls to be visible. */
- tzset ();
- t = localtime_r (&now, &dummy);
- }
+ /* Need to call tzset explicitly when calling localtime_r for changes
+ * to the timezone between calls to be visible. */
+ tzset ();
+ t = localtime_r (&now, &dummy);
#else
/* on win32 this apparently returns a per-thread struct which would be fine */
t = localtime (&now);