summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorTom Lane <tgl@sss.pgh.pa.us>2005-06-05 01:49:06 +0000
committerTom Lane <tgl@sss.pgh.pa.us>2005-06-05 01:49:06 +0000
commit7ef90f5aade6954bb30cbb10b950211937314ff3 (patch)
tree17ebe1a6e7f69c5bb2e4f2776acf407ed32deb2a /src
parentcd48aa0e9636c6225d34f366a9d71e7fc118c9f3 (diff)
Code for SET/SHOW TIME ZONE with a fixed-interval timezone was not
prepared for HAVE_INT64_TIMESTAMP. Per report from Guillaume Beaudoin.
Diffstat (limited to 'src')
-rw-r--r--src/backend/commands/variable.c10
1 files changed, 9 insertions, 1 deletions
diff --git a/src/backend/commands/variable.c b/src/backend/commands/variable.c
index 572b9ed1066..ff814c3208f 100644
--- a/src/backend/commands/variable.c
+++ b/src/backend/commands/variable.c
@@ -9,7 +9,7 @@
*
*
* IDENTIFICATION
- * $Header: /cvsroot/pgsql/src/backend/commands/variable.c,v 1.71.2.2 2003/06/06 16:25:52 tgl Exp $
+ * $Header: /cvsroot/pgsql/src/backend/commands/variable.c,v 1.71.2.3 2005/06/05 01:49:06 tgl Exp $
*
*-------------------------------------------------------------------------
*/
@@ -291,7 +291,11 @@ assign_timezone(const char *value, bool doit, bool interactive)
}
if (doit)
{
+#ifdef HAVE_INT64_TIMESTAMP
+ CTimeZone = interval->time / INT64CONST(1000000);
+#else
CTimeZone = interval->time;
+#endif
HasCTZSet = true;
}
pfree(interval);
@@ -394,7 +398,11 @@ show_timezone(void)
Interval interval;
interval.month = 0;
+#ifdef HAVE_INT64_TIMESTAMP
+ interval.time = CTimeZone * INT64CONST(1000000);
+#else
interval.time = CTimeZone;
+#endif
tzn = DatumGetCString(DirectFunctionCall1(interval_out,
IntervalPGetDatum(&interval)));