From 57ab1cdb152bdb223555ca2f46de06e3e26485dd Mon Sep 17 00:00:00 2001 From: Steve Dower Date: Tue, 22 Sep 2015 14:51:42 -0700 Subject: Issue #25092: Fix datetime.strftime() failure when errno was already set to EINVAL. --- Misc/NEWS | 3 +++ Modules/timemodule.c | 3 +++ 2 files changed, 6 insertions(+) diff --git a/Misc/NEWS b/Misc/NEWS index 882e310..4876113 100644 --- a/Misc/NEWS +++ b/Misc/NEWS @@ -18,6 +18,9 @@ Core and Builtins Library ------- +- Issue #25092: Fix datetime.strftime() failure when errno was already set to + EINVAL. + - Issue #23517: Fix rounding in fromtimestamp() and utcfromtimestamp() methods of datetime.datetime: microseconds are now rounded to nearest with ties going to nearest even integer (ROUND_HALF_EVEN), instead of being rounding diff --git a/Modules/timemodule.c b/Modules/timemodule.c index 9de3c84..d2caacd 100644 --- a/Modules/timemodule.c +++ b/Modules/timemodule.c @@ -653,6 +653,9 @@ time_strftime(PyObject *self, PyObject *args) PyErr_NoMemory(); break; } +#if defined _MSC_VER && _MSC_VER >= 1400 && defined(__STDC_SECURE_LIB__) + errno = 0; +#endif _Py_BEGIN_SUPPRESS_IPH buflen = format_time(outbuf, i, fmt, &buf); _Py_END_SUPPRESS_IPH -- cgit v0.12