diff options
Diffstat (limited to 'main/busybox/0001-libbb-fix-time-parsing-of-CC-YY-MMDDhhmm-.SS.patch')
-rw-r--r-- | main/busybox/0001-libbb-fix-time-parsing-of-CC-YY-MMDDhhmm-.SS.patch | 40 |
1 files changed, 40 insertions, 0 deletions
diff --git a/main/busybox/0001-libbb-fix-time-parsing-of-CC-YY-MMDDhhmm-.SS.patch b/main/busybox/0001-libbb-fix-time-parsing-of-CC-YY-MMDDhhmm-.SS.patch new file mode 100644 index 0000000000..9bd5075454 --- /dev/null +++ b/main/busybox/0001-libbb-fix-time-parsing-of-CC-YY-MMDDhhmm-.SS.patch @@ -0,0 +1,40 @@ +From 1a3d9fb9074dc746326e6fa98c3eb499f6a6e048 Mon Sep 17 00:00:00 2001 +From: Natanael Copa <ncopa@alpinelinux.org> +Date: Thu, 19 May 2016 16:17:32 +0200 +Subject: [PATCH] libbb: fix time parsing of [[CC]YY]MMDDhhmm[.SS] + +If SS is not given a value, it is assumed to be zero. +http://pubs.opengroup.org/onlinepubs/9699919799/utilities/touch.html + +closes 8951 + +Signed-off-by: Natanael Copa <ncopa@alpinelinux.org> +--- + libbb/time.c | 4 ++++ + 1 file changed, 4 insertions(+) + +diff --git a/libbb/time.c b/libbb/time.c +index aa19a47..44dd4aa 100644 +--- a/libbb/time.c ++++ b/libbb/time.c +@@ -159,6 +159,8 @@ void FAST_FUNC parse_datestr(const char *date_str, struct tm *ptm) + &ptm->tm_hour, + &ptm->tm_min, + &end) >= 5) { ++ /* assume zero if [.SS] is not given */ ++ ptm->tm_sec = 0; + /* Adjust month from 1-12 to 0-11 */ + ptm->tm_mon -= 1; + if ((int)cur_year >= 50) { /* >= 1950 */ +@@ -181,6 +183,8 @@ void FAST_FUNC parse_datestr(const char *date_str, struct tm *ptm) + &ptm->tm_hour, + &ptm->tm_min, + &end) >= 5) { ++ /* assume zero if [.SS] is not given */ ++ ptm->tm_sec = 0; + ptm->tm_year -= 1900; /* Adjust years */ + ptm->tm_mon -= 1; /* Adjust month from 1-12 to 0-11 */ + } else { +-- +2.8.2 + |