|
9 | 9 | * |
10 | 10 | * |
11 | 11 | * IDENTIFICATION |
12 | | - * $PostgreSQL: pgsql/src/backend/commands/variable.c,v 1.106 2005/04/19 03:13:58 momjian Exp $ |
| 12 | + * $PostgreSQL: pgsql/src/backend/commands/variable.c,v 1.107 2005/06/05 01:48:34 tgl Exp $ |
13 | 13 | * |
14 | 14 | *------------------------------------------------------------------------- |
15 | 15 | */ |
@@ -284,7 +284,11 @@ assign_timezone(const char *value, bool doit, GucSource source) |
284 | 284 | if (doit) |
285 | 285 | { |
286 | 286 | /* Here we change from SQL to Unix sign convention */ |
| 287 | +#ifdefHAVE_INT64_TIMESTAMP |
| 288 | +CTimeZone=-(interval->time /USECS_PER_SEC); |
| 289 | +#else |
287 | 290 | CTimeZone=-interval->time; |
| 291 | +#endif |
288 | 292 |
|
289 | 293 | HasCTZSet= true; |
290 | 294 | } |
@@ -398,8 +402,12 @@ show_timezone(void) |
398 | 402 | { |
399 | 403 | Intervalinterval; |
400 | 404 |
|
401 | | -interval.month=0; |
402 | | -interval.time=-CTimeZone; |
| 405 | +interval.month=0; |
| 406 | +#ifdefHAVE_INT64_TIMESTAMP |
| 407 | +interval.time=-(CTimeZone*USECS_PER_SEC); |
| 408 | +#else |
| 409 | +interval.time=-CTimeZone; |
| 410 | +#endif |
403 | 411 |
|
404 | 412 | tzn=DatumGetCString(DirectFunctionCall1(interval_out, |
405 | 413 | IntervalPGetDatum(&interval))); |
|