diff --git a/src/backend/utils/misc/guc.c b/src/backend/utils/misc/guc.c index 303329167a..0f535c8fa0 100644 --- a/src/backend/utils/misc/guc.c +++ b/src/backend/utils/misc/guc.c @@ -10,7 +10,7 @@ * Written by Peter Eisentraut . * * IDENTIFICATION - * $PostgreSQL: pgsql/src/backend/utils/misc/guc.c,v 1.488 2009/01/03 20:03:08 tgl Exp $ + * $PostgreSQL: pgsql/src/backend/utils/misc/guc.c,v 1.489 2009/01/05 13:23:33 tgl Exp $ * *-------------------------------------------------------------------- */ @@ -5747,9 +5747,17 @@ define_custom_variable(struct config_generic * variable) value = *pHolder->variable; if (value) - set_config_option(name, value, - phcontext, pHolder->gen.source, - GUC_ACTION_SET, true); + { + if (set_config_option(name, value, + phcontext, pHolder->gen.source, + GUC_ACTION_SET, true)) + { + /* Also copy over any saved source-location information */ + if (pHolder->gen.sourcefile) + set_config_sourcefile(name, pHolder->gen.sourcefile, + pHolder->gen.sourceline); + } + } /* * Free up as much as we conveniently can of the placeholder structure