Commit d91cf5bc authored by Felix Riemann's avatar Felix Riemann
Browse files

EogExifUtil: Fix build with older GCCs

Older GCCs don't support pragma diagnostic in functions.
Move the pragmas outside to fix the build with these compilers.

https://bugzilla.gnome.org/show_bug.cgi?id=780675
parent 24d7db48
......@@ -95,6 +95,12 @@ _calculate_wday_yday (struct tm *tm)
tm->tm_yday = tmp_tm.tm_yday;
}
/* Older GCCs don't support pragma diagnostic inside functions.
* Put these here to avoid problems with the strftime format strings
* without breaking the build for these older GCCs */
#pragma GCC diagnostic push
#pragma GCC diagnostic ignored "-Wformat-nonliteral"
#ifdef HAVE_STRPTIME
static gchar *
eog_exif_util_format_date_with_strptime (const gchar *date, const gchar* format)
......@@ -118,11 +124,9 @@ eog_exif_util_format_date_with_strptime (const gchar *date, const gchar* format)
if (!GPOINTER_TO_BOOLEAN (strptime_updates_wday.retval))
_calculate_wday_yday (&tm);
#pragma GCC diagnostic push
#pragma GCC diagnostic ignored "-Wformat-nonliteral"
/* A strftime-formatted string, to display the date the image was taken. */
dlen = strftime (tmp_date, DATE_BUF_SIZE * sizeof(gchar), format, &tm);
#pragma GCC diagnostic pop
new_date = g_strndup (tmp_date, dlen);
}
......@@ -156,10 +160,8 @@ eog_exif_util_format_date_by_hand (const gchar *date, const gchar* format)
tm.tm_sec = result < 6 ? 0 : seconds;
tm.tm_min = result < 5 ? 0 : minutes;
tm.tm_hour = result < 4 ? 0 : hour;
#pragma GCC diagnostic push
#pragma GCC diagnostic ignored "-Wformat-nonliteral"
dlen = strftime (tmp_date, DATE_BUF_SIZE * sizeof(gchar), format, &tm);
#pragma GCC diagnostic pop
if (dlen == 0)
return NULL;
......@@ -170,6 +172,8 @@ eog_exif_util_format_date_by_hand (const gchar *date, const gchar* format)
}
#endif /* HAVE_STRPTIME */
#pragma GCC diagnostic pop
/**
* eog_exif_util_format_date:
* @date: a date string following Exif specifications
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment