From 84f910a7076e09e551bf69e0972473ec15d33c79 Mon Sep 17 00:00:00 2001 From: Itagaki Takahiro Date: Mon, 14 Dec 2009 00:39:11 +0000 Subject: Additional fixes for large object access control. Use pg_largeobject_metadata.oid instead of pg_largeobject.loid to enumerate existing large objects in pg_dump, pg_restore, and contrib modules. --- src/bin/pg_dump/pg_backup_null.c | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) (limited to 'src/bin/pg_dump/pg_backup_null.c') diff --git a/src/bin/pg_dump/pg_backup_null.c b/src/bin/pg_dump/pg_backup_null.c index d9cb02446b3..127ff572197 100644 --- a/src/bin/pg_dump/pg_backup_null.c +++ b/src/bin/pg_dump/pg_backup_null.c @@ -17,7 +17,7 @@ * * * IDENTIFICATION - * $PostgreSQL: pgsql/src/bin/pg_dump/pg_backup_null.c,v 1.22 2009/08/04 21:56:09 tgl Exp $ + * $PostgreSQL: pgsql/src/bin/pg_dump/pg_backup_null.c,v 1.23 2009/12/14 00:39:11 itagaki Exp $ * *------------------------------------------------------------------------- */ @@ -151,8 +151,7 @@ _StartBlob(ArchiveHandle *AH, TocEntry *te, Oid oid) die_horribly(AH, NULL, "invalid OID for large object\n"); if (AH->ropt->dropSchema) - ahprintf(AH, "SELECT CASE WHEN EXISTS(SELECT 1 FROM pg_catalog.pg_largeobject WHERE loid = '%u') THEN pg_catalog.lo_unlink('%u') END;\n", - oid, oid); + DropBlobIfExists(AH, oid); ahprintf(AH, "SELECT pg_catalog.lo_open(pg_catalog.lo_create('%u'), %d);\n", oid, INV_WRITE); -- cgit v1.2.3