diff options
Diffstat (limited to 'lang/perl5.6/files/patch-POSIX.xs')
-rw-r--r-- | lang/perl5.6/files/patch-POSIX.xs | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/lang/perl5.6/files/patch-POSIX.xs b/lang/perl5.6/files/patch-POSIX.xs new file mode 100644 index 000000000000..7a3caa960822 --- /dev/null +++ b/lang/perl5.6/files/patch-POSIX.xs @@ -0,0 +1,19 @@ +--- ext/POSIX/POSIX.xs.orig Tue Feb 1 11:55:24 2005 ++++ ext/POSIX/POSIX.xs Tue Feb 1 11:56:43 2005 +@@ -3860,6 +3860,16 @@ + mytm.tm_yday = yday; + mytm.tm_isdst = isdst; + mini_mktime(&mytm); ++ /* use libc to normalize the thing -- @@@ -- FreeBSD PR 74042, perl bug 18238 */ ++ { ++ struct tm mytm2; ++ time_t t; ++ mytm2 = mytm; ++ t = mktime(&mytm2); ++ mytm2 = *localtime(&t); ++ mytm.tm_gmtoff = mytm2.tm_gmtoff; ++ mytm.tm_zone = mytm2.tm_zone; ++ } + len = strftime(tmpbuf, sizeof tmpbuf, fmt, &mytm); + /* + ** The following is needed to handle to the situation where |