mirror of
https://github.com/subsurface/subsurface.git
synced 2024-12-01 06:30:26 +00:00
don't use strftime() due to locale issues
Make statistics.c use snprintf() with weekday(), monthname() instead of strftime(). The mingw strftime() ends up having lots of problems at least on Windows unless you set the locale just right, so just avoid the problem by doing the simple function by hand. We already did that in other places anyway. Signed-off-by: Lubomir I. Ivanov <neolit123@gmail.com> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
This commit is contained in:
parent
6fa702bcbd
commit
97f09f3ea8
1 changed files with 9 additions and 1 deletions
10
statistics.c
10
statistics.c
|
@ -125,10 +125,18 @@ void show_dive_stats(struct dive *dive)
|
||||||
const char *unit;
|
const char *unit;
|
||||||
int idx, offset, gas_used;
|
int idx, offset, gas_used;
|
||||||
struct dive *prev_dive;
|
struct dive *prev_dive;
|
||||||
|
struct tm *tm;
|
||||||
|
|
||||||
process_all_dives(dive, &prev_dive);
|
process_all_dives(dive, &prev_dive);
|
||||||
|
|
||||||
strftime(buf, 80, "%a, %b %d, %Y, %k:%M", gmtime(&dive->when));
|
tm = gmtime(&dive->when);
|
||||||
|
snprintf(buf, sizeof(buf),
|
||||||
|
"%s, %s %d, %d %2d:%02d",
|
||||||
|
weekday(tm->tm_wday),
|
||||||
|
monthname(tm->tm_mon),
|
||||||
|
tm->tm_mday, tm->tm_year + 1900,
|
||||||
|
tm->tm_hour, tm->tm_min);
|
||||||
|
|
||||||
set_label(info_stat_w.date, buf);
|
set_label(info_stat_w.date, buf);
|
||||||
set_label(info_stat_w.dive_time, "%d min", (dive->duration.seconds + 30) / 60);
|
set_label(info_stat_w.dive_time, "%d min", (dive->duration.seconds + 30) / 60);
|
||||||
if (prev_dive)
|
if (prev_dive)
|
||||||
|
|
Loading…
Reference in a new issue