aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/backend/utils/misc/guc.c30
1 files changed, 17 insertions, 13 deletions
diff --git a/src/backend/utils/misc/guc.c b/src/backend/utils/misc/guc.c
index 656063321ef..98e682b009a 100644
--- a/src/backend/utils/misc/guc.c
+++ b/src/backend/utils/misc/guc.c
@@ -10,7 +10,7 @@
* Written by Peter Eisentraut <peter_e@gmx.net>.
*
* IDENTIFICATION
- * $PostgreSQL: pgsql/src/backend/utils/misc/guc.c,v 1.360.2.1 2007/04/23 15:13:30 neilc Exp $
+ * $PostgreSQL: pgsql/src/backend/utils/misc/guc.c,v 1.360.2.2 2008/05/26 18:54:43 tgl Exp $
*
*--------------------------------------------------------------------
*/
@@ -3982,6 +3982,10 @@ set_config_option(const char *name, const char *value,
source = conf->gen.reset_source;
}
+ /* Save old value to support transaction abort */
+ if (changeVal && !makeDefault)
+ push_old_value(&conf->gen);
+
if (conf->assign_hook)
if (!(*conf->assign_hook) (newval, changeVal, source))
{
@@ -3994,9 +3998,6 @@ set_config_option(const char *name, const char *value,
if (changeVal || makeDefault)
{
- /* Save old value to support transaction abort */
- if (!makeDefault)
- push_old_value(&conf->gen);
if (changeVal)
{
*conf->variable = newval;
@@ -4066,6 +4067,10 @@ set_config_option(const char *name, const char *value,
source = conf->gen.reset_source;
}
+ /* Save old value to support transaction abort */
+ if (changeVal && !makeDefault)
+ push_old_value(&conf->gen);
+
if (conf->assign_hook)
if (!(*conf->assign_hook) (newval, changeVal, source))
{
@@ -4078,9 +4083,6 @@ set_config_option(const char *name, const char *value,
if (changeVal || makeDefault)
{
- /* Save old value to support transaction abort */
- if (!makeDefault)
- push_old_value(&conf->gen);
if (changeVal)
{
*conf->variable = newval;
@@ -4150,6 +4152,10 @@ set_config_option(const char *name, const char *value,
source = conf->gen.reset_source;
}
+ /* Save old value to support transaction abort */
+ if (changeVal && !makeDefault)
+ push_old_value(&conf->gen);
+
if (conf->assign_hook)
if (!(*conf->assign_hook) (newval, changeVal, source))
{
@@ -4162,9 +4168,6 @@ set_config_option(const char *name, const char *value,
if (changeVal || makeDefault)
{
- /* Save old value to support transaction abort */
- if (!makeDefault)
- push_old_value(&conf->gen);
if (changeVal)
{
*conf->variable = newval;
@@ -4239,6 +4242,10 @@ set_config_option(const char *name, const char *value,
break;
}
+ /* Save old value to support transaction abort */
+ if (changeVal && !makeDefault)
+ push_old_value(&conf->gen);
+
if (conf->assign_hook)
{
const char *hookresult;
@@ -4278,9 +4285,6 @@ set_config_option(const char *name, const char *value,
if (changeVal || makeDefault)
{
- /* Save old value to support transaction abort */
- if (!makeDefault)
- push_old_value(&conf->gen);
if (changeVal)
{
set_string_field(conf, conf->variable, newval);