|
9 | 9 | *
|
10 | 10 | *
|
11 | 11 | * IDENTIFICATION
|
12 |
| - * $Header: /cvsroot/pgsql/src/backend/commands/variable.c,v 1.40 2000/08/01 18:29:29 tgl Exp $ |
| 12 | + * $Header: /cvsroot/pgsql/src/backend/commands/variable.c,v 1.41 2000/09/22 15:34:31 tgl Exp $ |
13 | 13 | *
|
14 | 14 | *-------------------------------------------------------------------------
|
15 | 15 | */
|
@@ -592,28 +592,33 @@ reset_random_seed(void)
|
592 | 592 | void
|
593 | 593 | SetPGVariable(const char *name, const char *value)
|
594 | 594 | {
|
| 595 | + char *mvalue = value ? pstrdup(value) : ((char*) NULL); |
| 596 | + |
595 | 597 | /*
|
596 | 598 | * Special cases ought to be removed and handled separately
|
597 | 599 | * by TCOP
|
598 | 600 | */
|
599 | 601 | if (strcasecmp(name, "datestyle")==0)
|
600 |
| - parse_date(pstrdup(value)); |
| 602 | + parse_date(mvalue); |
601 | 603 | else if (strcasecmp(name, "timezone")==0)
|
602 |
| - parse_timezone(pstrdup(value)); |
| 604 | + parse_timezone(mvalue); |
603 | 605 | else if (strcasecmp(name, "DefaultXactIsoLevel")==0)
|
604 |
| - parse_DefaultXactIsoLevel(pstrdup(value)); |
| 606 | + parse_DefaultXactIsoLevel(mvalue); |
605 | 607 | else if (strcasecmp(name, "XactIsoLevel")==0)
|
606 |
| - parse_XactIsoLevel(pstrdup(value)); |
| 608 | + parse_XactIsoLevel(mvalue); |
607 | 609 | #ifdef MULTIBYTE
|
608 | 610 | else if (strcasecmp(name, "client_encoding")==0)
|
609 |
| - parse_client_encoding(pstrdup(value)); |
| 611 | + parse_client_encoding(mvalue); |
610 | 612 | else if (strcasecmp(name, "server_encoding")==0)
|
611 |
| - parse_server_encoding(pstrdup(value)); |
| 613 | + parse_server_encoding(mvalue); |
612 | 614 | #endif
|
613 | 615 | else if (strcasecmp(name, "random_seed")==0)
|
614 |
| - parse_random_seed(pstrdup(value)); |
| 616 | + parse_random_seed(mvalue); |
615 | 617 | else
|
616 | 618 | SetConfigOption(name, value, superuser() ? PGC_SUSET : PGC_USERSET);
|
| 619 | + |
| 620 | + if (mvalue) |
| 621 | + pfree(mvalue); |
617 | 622 | }
|
618 | 623 |
|
619 | 624 |
|
|
0 commit comments