From: Tatsuo Ishii <t-ishii@sra.co.jp>
Included patches fix a portability problem of unsetenv() used in 6.4.2 multi-byte support. unsetenv() is only avaliable on FreeBSD and Linux so I decided to replace with putenv().
This commit is contained in:
parent
e27f8791f9
commit
2ae5d51668
@ -5,7 +5,7 @@
|
|||||||
*
|
*
|
||||||
* Copyright (c) 1994, Regents of the University of California
|
* Copyright (c) 1994, Regents of the University of California
|
||||||
*
|
*
|
||||||
* $Id: analyze.c,v 1.95 1999/01/25 12:01:05 vadim Exp $
|
* $Id: analyze.c,v 1.96 1999/01/27 01:18:20 scrappy Exp $
|
||||||
*
|
*
|
||||||
*-------------------------------------------------------------------------
|
*-------------------------------------------------------------------------
|
||||||
*/
|
*/
|
||||||
@ -714,6 +714,7 @@ transformCreateStmt(ParseState *pstate, CreateStmt *stmt)
|
|||||||
index = makeNode(IndexStmt);
|
index = makeNode(IndexStmt);
|
||||||
|
|
||||||
index->unique = TRUE;
|
index->unique = TRUE;
|
||||||
|
index->primary = (constraint->contype == CONSTR_PRIMARY ? TRUE:FALSE);
|
||||||
if (constraint->name != NULL)
|
if (constraint->name != NULL)
|
||||||
index->idxname = constraint->name;
|
index->idxname = constraint->name;
|
||||||
else if (constraint->contype == CONSTR_PRIMARY)
|
else if (constraint->contype == CONSTR_PRIMARY)
|
||||||
@ -722,14 +723,10 @@ transformCreateStmt(ParseState *pstate, CreateStmt *stmt)
|
|||||||
elog(ERROR, "CREATE TABLE/PRIMARY KEY multiple keys for table %s are not legal", stmt->relname);
|
elog(ERROR, "CREATE TABLE/PRIMARY KEY multiple keys for table %s are not legal", stmt->relname);
|
||||||
|
|
||||||
have_pkey = TRUE;
|
have_pkey = TRUE;
|
||||||
index->primary = TRUE;
|
|
||||||
index->idxname = makeTableName(stmt->relname, "pkey", NULL);
|
index->idxname = makeTableName(stmt->relname, "pkey", NULL);
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
|
||||||
index->primary = FALSE;
|
|
||||||
index->idxname = NULL;
|
index->idxname = NULL;
|
||||||
}
|
|
||||||
|
|
||||||
index->relname = stmt->relname;
|
index->relname = stmt->relname;
|
||||||
index->accessMethod = "btree";
|
index->accessMethod = "btree";
|
||||||
|
@ -7,7 +7,7 @@
|
|||||||
*
|
*
|
||||||
*
|
*
|
||||||
* IDENTIFICATION
|
* IDENTIFICATION
|
||||||
* $Header: /cvsroot/pgsql/src/bin/psql/Attic/psql.c,v 1.166 1999/01/17 06:19:19 momjian Exp $
|
* $Header: /cvsroot/pgsql/src/bin/psql/Attic/psql.c,v 1.167 1999/01/27 01:18:21 scrappy Exp $
|
||||||
*
|
*
|
||||||
*-------------------------------------------------------------------------
|
*-------------------------------------------------------------------------
|
||||||
*/
|
*/
|
||||||
@ -1509,7 +1509,8 @@ do_connect(const char *new_dbname,
|
|||||||
PGCLIENTENCODING value. -- 1998/12/12 Tatsuo Ishii */
|
PGCLIENTENCODING value. -- 1998/12/12 Tatsuo Ishii */
|
||||||
|
|
||||||
if (!has_client_encoding) {
|
if (!has_client_encoding) {
|
||||||
unsetenv("PGCLIENTENCODING");
|
static const char ev[] = "PGCLIENTENCODING=";
|
||||||
|
putenv(ev);
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
@ -7,7 +7,7 @@
|
|||||||
*
|
*
|
||||||
*
|
*
|
||||||
* IDENTIFICATION
|
* IDENTIFICATION
|
||||||
* $Header: /cvsroot/pgsql/src/interfaces/libpq/fe-connect.c,v 1.88 1999/01/17 06:19:35 momjian Exp $
|
* $Header: /cvsroot/pgsql/src/interfaces/libpq/fe-connect.c,v 1.89 1999/01/27 01:18:22 scrappy Exp $
|
||||||
*
|
*
|
||||||
*-------------------------------------------------------------------------
|
*-------------------------------------------------------------------------
|
||||||
*/
|
*/
|
||||||
@ -816,7 +816,7 @@ PQsetenv(PGconn *conn)
|
|||||||
#ifdef MULTIBYTE
|
#ifdef MULTIBYTE
|
||||||
/* query server encoding */
|
/* query server encoding */
|
||||||
env = getenv(envname);
|
env = getenv(envname);
|
||||||
if (!env)
|
if (!env || *env == NULL)
|
||||||
{
|
{
|
||||||
rtn = PQexec(conn, "select getdatabaseencoding()");
|
rtn = PQexec(conn, "select getdatabaseencoding()");
|
||||||
if (rtn && PQresultStatus(rtn) == PGRES_TUPLES_OK)
|
if (rtn && PQresultStatus(rtn) == PGRES_TUPLES_OK)
|
||||||
|
@ -9,7 +9,7 @@
|
|||||||
* didn't really belong there.
|
* didn't really belong there.
|
||||||
*
|
*
|
||||||
* IDENTIFICATION
|
* IDENTIFICATION
|
||||||
* $Header: /cvsroot/pgsql/src/interfaces/libpq/fe-print.c,v 1.15 1998/10/06 14:16:50 tgl Exp $
|
* $Header: /cvsroot/pgsql/src/interfaces/libpq/fe-print.c,v 1.16 1999/01/27 01:18:23 scrappy Exp $
|
||||||
*
|
*
|
||||||
*-------------------------------------------------------------------------
|
*-------------------------------------------------------------------------
|
||||||
*/
|
*/
|
||||||
@ -506,7 +506,7 @@ PQmblen(unsigned char *s)
|
|||||||
int encoding = -1;
|
int encoding = -1;
|
||||||
|
|
||||||
str = getenv("PGCLIENTENCODING");
|
str = getenv("PGCLIENTENCODING");
|
||||||
if (str)
|
if (str && *str != NULL)
|
||||||
encoding = pg_char_to_encoding(str);
|
encoding = pg_char_to_encoding(str);
|
||||||
if (encoding < 0)
|
if (encoding < 0)
|
||||||
encoding = MULTIBYTE;
|
encoding = MULTIBYTE;
|
||||||
|
Loading…
x
Reference in New Issue
Block a user