summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--Build/source/texk/dvipsk/ChangeLog5
-rw-r--r--Build/source/texk/dvipsk/output.c7
2 files changed, 11 insertions, 1 deletions
diff --git a/Build/source/texk/dvipsk/ChangeLog b/Build/source/texk/dvipsk/ChangeLog
index 356a0010db9..004aa8fbadf 100644
--- a/Build/source/texk/dvipsk/ChangeLog
+++ b/Build/source/texk/dvipsk/ChangeLog
@@ -1,3 +1,8 @@
+2016-05-06 Akira Kakuto <kakuto@fuk.kindai.ac.jp>
+
+ * output.c: Avoid to crash for to large a value of SOURCE_DATE_EPOCH
+ (w32 only).
+
2016-05-04 Akira Kakuto <kakuto@fuk.kindai.ac.jp>
* output.c: Support SOURCE_DATE_EPOCH for %%CreationDate.
diff --git a/Build/source/texk/dvipsk/output.c b/Build/source/texk/dvipsk/output.c
index ff5931c3b18..fa57daaa1a1 100644
--- a/Build/source/texk/dvipsk/output.c
+++ b/Build/source/texk/dvipsk/output.c
@@ -104,8 +104,13 @@ get_unique_time_if_given(void)
if (source_date_epoch) {
errno = 0;
epoch = strtoll(source_date_epoch, &endptr, 10);
- if (!(epoch < 0 || *endptr != '\0' || errno != 0))
+ if (!(epoch < 0 || *endptr != '\0' || errno != 0)) {
ret = (time_t) epoch;
+#if defined(_MSC_VER)
+ if (ret > 32535291599ULL)
+ ret = 32535291599ULL;
+#endif
+ }
}
return ret;
}