date: for -uR and -uIh, timezone still have to be shown at +hhmm, not as abbreviation

function                                             old     new   delta
date_main                                            963     941     -22

Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
This commit is contained in:
Denys Vlasenko 2020-11-28 20:58:42 +01:00
parent 818a4aa2ef
commit ab6991c6f5

View File

@ -320,18 +320,16 @@ int date_main(int argc UNUSED_PARAM, char **argv)
i = 8 + 3 * ifmt; i = 8 + 3 * ifmt;
if (ifmt != 0) { if (ifmt != 0) {
/* TODO: if (ifmt==4) i += sprintf(&fmt_dt2str[i], ",%09u", nanoseconds); */ /* TODO: if (ifmt==4) i += sprintf(&fmt_dt2str[i], ",%09u", nanoseconds); */
format_utc:
fmt_dt2str[i++] = '%'; fmt_dt2str[i++] = '%';
fmt_dt2str[i++] = (opt & OPT_UTC) ? 'Z' : 'z'; fmt_dt2str[i++] = 'z';
/* FIXME: %z prints "+hhmm" timezone, but coreutils-8.30 prints "+hh:mm" */
} }
fmt_dt2str[i] = '\0'; fmt_dt2str[i] = '\0';
} else if (opt & OPT_RFC2822) { } else if (opt & OPT_RFC2822) {
/* -R. undo busybox.c setlocale */ /* -R. undo busybox.c setlocale */
if (ENABLE_LOCALE_SUPPORT) if (ENABLE_LOCALE_SUPPORT)
setlocale(LC_TIME, "C"); setlocale(LC_TIME, "C");
strcpy(fmt_dt2str, "%a, %d %b %Y %H:%M:%S "); strcpy(fmt_dt2str, "%a, %d %b %Y %H:%M:%S %z");
i = sizeof("%a, %d %b %Y %H:%M:%S ")-1;
goto format_utc;
} else { /* default case */ } else { /* default case */
fmt_dt2str = (char*)"%a %b %e %H:%M:%S %Z %Y"; fmt_dt2str = (char*)"%a %b %e %H:%M:%S %Z %Y";
} }