diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/backend/utils/misc/guc-file.l | 12 |
1 files changed, 7 insertions, 5 deletions
diff --git a/src/backend/utils/misc/guc-file.l b/src/backend/utils/misc/guc-file.l index b730a120d8e..c5ca4a40742 100644 --- a/src/backend/utils/misc/guc-file.l +++ b/src/backend/utils/misc/guc-file.l @@ -409,6 +409,7 @@ ParseConfigFile(const char *config_file, const char *calling_file, bool strict, ConfigVariable **head_p, ConfigVariable **tail_p) { + char *abs_path; bool OK = true; FILE *fp; @@ -426,8 +427,8 @@ ParseConfigFile(const char *config_file, const char *calling_file, bool strict, return false; } - config_file = AbsoluteConfigLocation(config_file,calling_file); - fp = AllocateFile(config_file, "r"); + abs_path = AbsoluteConfigLocation(config_file, calling_file); + fp = AllocateFile(abs_path, "r"); if (!fp) { if (strict) @@ -435,19 +436,20 @@ ParseConfigFile(const char *config_file, const char *calling_file, bool strict, ereport(elevel, (errcode_for_file_access(), errmsg("could not open configuration file \"%s\": %m", - config_file))); + abs_path))); return false; } ereport(LOG, (errmsg("skipping missing configuration file \"%s\"", - config_file))); + abs_path))); return OK; } - OK = ParseConfigFp(fp, config_file, depth, elevel, head_p, tail_p); + OK = ParseConfigFp(fp, abs_path, depth, elevel, head_p, tail_p); FreeFile(fp); + pfree(abs_path); return OK; } |