svn commit: r447002 - in branches/2017Q3/finance/libofx: . files
Jason E. Hale
jhale at FreeBSD.org
Mon Jul 31 22:09:34 UTC 2017
Author: jhale
Date: Mon Jul 31 22:09:32 2017
New Revision: 447002
URL: https://svnweb.freebsd.org/changeset/ports/447002
Log:
MFH: r446957
Fix Daylight Saving Time (DST) detection. Previous patch was erroneously
dectecting whether DST is currently in effect for the timezone (TZ) in use
instead of emulating the glibc global daylight variable which is set to 0 if
DST conversions should never be applied for the TZ in use; otherwise non-zero.
PR: 220665
Submitted by: madpilot
Approved by: ports-secteam (zi)
Modified:
branches/2017Q3/finance/libofx/Makefile
branches/2017Q3/finance/libofx/files/patch-lib_ofx__utilities.cpp
Directory Properties:
branches/2017Q3/ (props changed)
Modified: branches/2017Q3/finance/libofx/Makefile
==============================================================================
--- branches/2017Q3/finance/libofx/Makefile Mon Jul 31 22:03:45 2017 (r447001)
+++ branches/2017Q3/finance/libofx/Makefile Mon Jul 31 22:09:32 2017 (r447002)
@@ -3,6 +3,7 @@
PORTNAME= libofx
PORTVERSION= 0.9.11
+PORTREVISION= 1
CATEGORIES= finance
MASTER_SITES= SF/${PORTNAME}/${PORTNAME}
Modified: branches/2017Q3/finance/libofx/files/patch-lib_ofx__utilities.cpp
==============================================================================
--- branches/2017Q3/finance/libofx/files/patch-lib_ofx__utilities.cpp Mon Jul 31 22:03:45 2017 (r447001)
+++ branches/2017Q3/finance/libofx/files/patch-lib_ofx__utilities.cpp Mon Jul 31 22:09:32 2017 (r447002)
@@ -1,18 +1,14 @@
--- lib/ofx_utilities.cpp.orig 2013-04-16 19:50:51 UTC
+++ lib/ofx_utilities.cpp
-@@ -115,9 +115,14 @@ time_t ofxdate_to_time_t(const string of
+@@ -115,6 +115,11 @@ time_t ofxdate_to_time_t(const string ofxdate)
char time_zone_specified = false;
string ofxdate_whole;
time_t temptime;
-+ int daylight;
-+ const struct tm* t;
-+
-+ std::time(&temptime);
-+ t = localtime(&temptime);
-+ daylight = t->tm_isdst;
++ int daylight = 0;
++
++ tzset();
++ if(tzname[1][0] != ' ')
++ daylight = 1;
time.tm_isdst = daylight; // initialize dst setting
-- std::time(&temptime);
- local_offset = difftime(mktime(localtime(&temptime)), mktime(gmtime(&temptime))) + (3600 * daylight);
-
- if (ofxdate.size() != 0)
+ std::time(&temptime);
More information about the svn-ports-all
mailing list