diff options
Diffstat (limited to 'src/backend/libpq/hba.c')
-rw-r--r-- | src/backend/libpq/hba.c | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/src/backend/libpq/hba.c b/src/backend/libpq/hba.c index 717b398f893..f565442ac68 100644 --- a/src/backend/libpq/hba.c +++ b/src/backend/libpq/hba.c @@ -10,7 +10,7 @@ * * * IDENTIFICATION - * $PostgreSQL: pgsql/src/backend/libpq/hba.c,v 1.146 2005/07/29 19:30:04 tgl Exp $ + * $PostgreSQL: pgsql/src/backend/libpq/hba.c,v 1.147 2005/08/11 21:11:44 tgl Exp $ * *------------------------------------------------------------------------- */ @@ -1001,13 +1001,15 @@ load_hba(void) * dboid: gets database OID * dbtablespace: gets database's default tablespace's OID * dbfrozenxid: gets database's frozen XID + * dbvacuumxid: gets database's vacuum XID * * This is not much related to the other functions in hba.c, but we put it * here because it uses the next_token() infrastructure. */ bool read_pg_database_line(FILE *fp, char *dbname, Oid *dboid, - Oid *dbtablespace, TransactionId *dbfrozenxid) + Oid *dbtablespace, TransactionId *dbfrozenxid, + TransactionId *dbvacuumxid) { char buf[MAX_TOKEN]; @@ -1030,6 +1032,10 @@ read_pg_database_line(FILE *fp, char *dbname, Oid *dboid, if (!isdigit((unsigned char) buf[0])) elog(FATAL, "bad data in flat pg_database file"); *dbfrozenxid = atoxid(buf); + next_token(fp, buf, sizeof(buf)); + if (!isdigit((unsigned char) buf[0])) + elog(FATAL, "bad data in flat pg_database file"); + *dbvacuumxid = atoxid(buf); /* expect EOL next */ if (next_token(fp, buf, sizeof(buf))) elog(FATAL, "bad data in flat pg_database file"); |