The actual segfault was caused by a double pfree(), but ISTM that
authorBruce Momjian <bruce@momjian.us>
Sat, 14 Dec 2002 18:49:37 +0000 (18:49 +0000)
committerBruce Momjian <bruce@momjian.us>
Sat, 14 Dec 2002 18:49:37 +0000 (18:49 +0000)
failing to find pg_hba.conf should be a fatal error anyway, so I
increased the priority of the elog() from LOG to FATAL and refactored
the code a little bit.

Neil Conway

src/backend/libpq/hba.c

index 46fa308451488fb6878032d9323055e2a5f2d774..185093fb63363422e32d2736cffdf639bb945a14 100644 (file)
@@ -10,7 +10,7 @@
  *
  *
  * IDENTIFICATION
- *       $Header: /cvsroot/pgsql/src/backend/libpq/hba.c,v 1.91 2002/12/11 22:17:11 momjian Exp $
+ *       $Header: /cvsroot/pgsql/src/backend/libpq/hba.c,v 1.92 2002/12/14 18:49:37 momjian Exp $
  *
  *-------------------------------------------------------------------------
  */
@@ -845,16 +845,13 @@ load_hba(void)
        file = AllocateFile(conf_file, "r");
        if (file == NULL)
        {
-               /* The open of the config file failed.  */
-               elog(LOG, "load_hba: Unable to open authentication config file \"%s\": %m",
+               elog(FATAL,
+                        "load_hba: Unable to open authentication config file \"%s\": %m",
                         conf_file);
-               pfree(conf_file);
-       }
-       else
-       {
-               hba_lines = tokenize_file(file);
-               FreeFile(file);
        }
+
+       hba_lines = tokenize_file(file);
+       FreeFile(file);
        pfree(conf_file);
 }