summaryrefslogtreecommitdiff
path: root/contrib/pg_upgrade/relfilenode.c
diff options
context:
space:
mode:
authorBruce Momjian <bruce@momjian.us>2010-09-28 21:41:03 +0000
committerBruce Momjian <bruce@momjian.us>2010-09-28 21:41:03 +0000
commit9340fb80b1dba5528c0d16b24985369659a19377 (patch)
tree9f4fd6fd6b30a6f694a88156baefe445e385aad5 /contrib/pg_upgrade/relfilenode.c
parenta1bb570de97c71eba3c1b7a067063e8ba28c41d5 (diff)
downloadpostgresql-9340fb80b1dba5528c0d16b24985369659a19377.tar.gz
In pg_upgrade, properly handle oids > 2^31 by using strtoul() internally
rather than atol(). Per report from Brian Hirt
Diffstat (limited to 'contrib/pg_upgrade/relfilenode.c')
-rw-r--r--contrib/pg_upgrade/relfilenode.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/contrib/pg_upgrade/relfilenode.c b/contrib/pg_upgrade/relfilenode.c
index a69548b68c..dd605bbe3f 100644
--- a/contrib/pg_upgrade/relfilenode.c
+++ b/contrib/pg_upgrade/relfilenode.c
@@ -94,9 +94,9 @@ get_pg_database_relfilenode(migratorContext *ctx, Cluster whichCluster)
i_relfile = PQfnumber(res, "relfilenode");
if (whichCluster == CLUSTER_OLD)
- ctx->old.pg_database_oid = atol(PQgetvalue(res, 0, i_relfile));
+ ctx->old.pg_database_oid = str2uint(PQgetvalue(res, 0, i_relfile));
else
- ctx->new.pg_database_oid = atol(PQgetvalue(res, 0, i_relfile));
+ ctx->new.pg_database_oid = str2uint(PQgetvalue(res, 0, i_relfile));
PQclear(res);
PQfinish(conn);