X-Git-Url: http://git.tuebingen.mpg.de/?a=blobdiff_plain;f=aft.c;h=35e513ffb8a76c099544ac865742810caac10abc;hb=37a1f8ae30afb83f6d2187dcdbb30feec57f104b;hp=8df2bc6091e55945843e7a93b0eec7f4f5cbf2b3;hpb=3c978d34b0e9e435c097f3cd6fbabf031087a3b6;p=paraslash.git diff --git a/aft.c b/aft.c index 8df2bc60..35e513ff 100644 --- a/aft.c +++ b/aft.c @@ -676,26 +676,27 @@ int load_afd(int shmid, struct audio_file_data *afd) static int get_local_time(uint64_t *seconds, char *buf, size_t size, time_t current_time, enum ls_listing_mode lm) { - struct tm t; + struct tm *tm; /* * Omit year but show time if the given value is closer to the current * time than this many seconds. */ const time_t m = 6 * 30 * 24 * 3600; /* six months */ - if (!localtime_r((time_t *)seconds, &t)) + tm = localtime((time_t *)seconds); + if (!tm) return -E_LOCALTIME; if (lm == LS_MODE_MBOX) { - if (!strftime(buf, size, "%c", &t)) + if (!strftime(buf, size, "%c", tm)) return -E_STRFTIME; return 1; } if (*seconds > current_time - m && *seconds < current_time + m) { - if (!strftime(buf, size, "%b %e %k:%M", &t)) + if (!strftime(buf, size, "%b %e %k:%M", tm)) return -E_STRFTIME; return 1; } - if (!strftime(buf, size, "%b %e %Y", &t)) + if (!strftime(buf, size, "%b %e %Y", tm)) return -E_STRFTIME; return 1; }