Department of second thoughts: probably still need an IsTransactionState

test in there...
This commit is contained in:
Tom Lane 2003-04-27 18:01:46 +00:00
parent 5f15fa8d06
commit 351372e585

View File

@ -4,7 +4,7 @@
* (currently mule internal code (mic) is used) * (currently mule internal code (mic) is used)
* Tatsuo Ishii * Tatsuo Ishii
* *
* $Header: /cvsroot/pgsql/src/backend/utils/mb/mbutils.c,v 1.40 2003/04/27 17:31:25 tgl Exp $ * $Header: /cvsroot/pgsql/src/backend/utils/mb/mbutils.c,v 1.41 2003/04/27 18:01:46 tgl Exp $
*/ */
#include "postgres.h" #include "postgres.h"
@ -106,6 +106,17 @@ SetClientEncoding(int encoding, bool doit)
return 0; return 0;
} }
/*
* If we're not inside a transaction then we can't do catalog lookups,
* so fail. After backend startup, this could only happen if we
* are re-reading postgresql.conf due to SIGHUP --- so basically this
* just constrains the ability to change client_encoding on the fly
* from postgresql.conf. Which would probably be a stupid thing to do
* anyway.
*/
if (!IsTransactionState())
return -1;
/* /*
* Look up the conversion functions. * Look up the conversion functions.
*/ */