as previously discussed.
It makes AIX and IRIX not use DST for dates before 1970.
The following expected files need to be removed from the regression tests,
they contain wrong results and are not needed any more.
src/test/regress/expected/horology-1947-PDT.out
src/test/regress/expected/tinterval-1947-PDT.out
src/test/regress/expected/abstime-1947-PDT.out
Zeugswetter Andreas
*
*
* IDENTIFICATION
- * $Header: /cvsroot/pgsql/src/backend/utils/adt/nabstime.c,v 1.80 2001/01/24 19:43:14 momjian Exp $
+ * $Header: /cvsroot/pgsql/src/backend/utils/adt/nabstime.c,v 1.81 2001/02/13 14:32:52 momjian Exp $
*
* NOTES
*
#if defined(HAVE_TM_ZONE) || defined(HAVE_INT_TIMEZONE)
if (tzp != NULL)
+ {
tx = localtime((time_t *) &time);
+# ifdef NO_MKTIME_BEFORE_1970
+ if (tx->tm_year < 70 && tx->tm_isdst == 1)
+ {
+ time -= 3600;
+ tx = localtime((time_t *) &time);
+ tx->tm_isdst = 0;
+ }
+# endif
+ }
else
{
tx = gmtime((time_t *) &time);
*
*
* IDENTIFICATION
- * $Header: /cvsroot/pgsql/src/backend/utils/adt/timestamp.c,v 1.44 2001/01/24 19:43:14 momjian Exp $
+ * $Header: /cvsroot/pgsql/src/backend/utils/adt/timestamp.c,v 1.45 2001/02/13 14:32:52 momjian Exp $
*
*-------------------------------------------------------------------------
*/
#if defined(HAVE_TM_ZONE) || defined(HAVE_INT_TIMEZONE)
tx = localtime(&utime);
+# ifdef NO_MKTIME_BEFORE_1970
+ if (tx->tm_year < 70 && tx->tm_isdst == 1)
+ {
+ utime -= 3600;
+ tx = localtime(&utime);
+ tx->tm_isdst = 0;
+ }
+# endif
tm->tm_year = tx->tm_year + 1900;
tm->tm_mon = tx->tm_mon + 1;
tm->tm_mday = tx->tm_mday;
#define CLASS_CONFLICT
#define DISABLE_XOPEN_NLS
#define HAS_TEST_AND_SET
+#define NO_MKTIME_BEFORE_1970
typedef unsigned int slock_t;
#include <sys/machine.h> /* ENDIAN definitions for network
#define HAS_TEST_AND_SET
+#define NO_MKTIME_BEFORE_1970
typedef unsigned long slock_t;
-abstime/.*-aix4=abstime-1947-PDT
-abstime/.*-irix6=abstime-1947-PDT
abstime/alpha.*-dec-osf=abstime-solaris-1947
abstime/i.86-pc-solaris=abstime-solaris-1947
abstime/sparc-sun-solaris=abstime-solaris-1947
geometry/sparc.*-linux-gnu=geometry-solaris-precision
geometry/alpha.*-linux-gnu=geometry-solaris-precision
geometry/.*-beos=geometry-intel-beos
-horology/.*-aix4=horology-1947-PDT
-horology/.*-irix6=horology-1947-PDT
+horology/.*-aix4=horology-no-DST-before-1970
+horology/.*-irix6=horology-no-DST-before-1970
horology/alpha.*-dec-osf=horology-solaris-1947
horology/.*-cygwin=horology-no-DST-before-1970
horology/hppa=horology-no-DST-before-1970
int4/.*-sysv5uw=int4-too-large
int4/.*-beos=int4-range-error
int8/.*-qnx=int8-exp-three-digits
-tinterval/.*-aix4=tinterval-1947-PDT
-tinterval/.*-irix6=tinterval-1947-PDT
tinterval/alpha.*-dec-osf=tinterval-solaris-1947
tinterval/i.86-pc-solaris=tinterval-solaris-1947
tinterval/sparc-sun-solaris=tinterval-solaris-1947