[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PATCH 1/2] nstrftime: simplify test for mktime failure
From: |
Paul Eggert |
Subject: |
[PATCH 1/2] nstrftime: simplify test for mktime failure |
Date: |
Sat, 3 Nov 2018 23:05:30 -0700 |
* lib/nstrftime.c (__strftime_internal): Simplify.
---
ChangeLog | 5 +++++
lib/nstrftime.c | 22 ++--------------------
2 files changed, 7 insertions(+), 20 deletions(-)
diff --git a/ChangeLog b/ChangeLog
index bbf379b8c..cd9d8b83b 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+2018-11-03 Paul Eggert <address@hidden>
+
+ nstrftime: simplify test for mktime failure
+ * lib/nstrftime.c (__strftime_internal): Simplify.
+
2018-11-02 Paul Eggert <address@hidden>
gnulib-common.m4: port _Noreturn to C++
diff --git a/lib/nstrftime.c b/lib/nstrftime.c
index e55cfda0a..61ac84b0d 100644
--- a/lib/nstrftime.c
+++ b/lib/nstrftime.c
@@ -1438,28 +1438,10 @@ __strftime_internal (STREAM_OR_CHAR_T *s, STRFTIME_ARG
(size_t maxsize)
# endif
ltm = *tp;
+ ltm.tm_wday = -1;
lt = mktime_z (tz, <m);
-
- if (lt == (time_t) -1)
- {
- /* mktime returns -1 for errors, but -1 is also a
- valid time_t value. Check whether an error really
- occurred. */
- struct tm tm;
-
- if (! localtime_rz (tz, <, &tm)
- || ((ltm.tm_sec ^ tm.tm_sec)
- | (ltm.tm_min ^ tm.tm_min)
- | (ltm.tm_hour ^ tm.tm_hour)
- | (ltm.tm_mday ^ tm.tm_mday)
- | (ltm.tm_mon ^ tm.tm_mon)
- | (ltm.tm_year ^ tm.tm_year)))
- break;
- }
-
- if (! localtime_rz (0, <, >m))
+ if (ltm.tm_wday < 0 || ! localtime_rz (0, <, >m))
break;
-
diff = tm_diff (<m, >m);
}
#endif
--
2.17.1
- [PATCH 1/2] nstrftime: simplify test for mktime failure,
Paul Eggert <=