diff --git a/src/bin/pg_dump/pg_backup_archiver.c b/src/bin/pg_dump/pg_backup_archiver.c index a636407431072330ad73e7e60142761a0d6a6c66..af44e85251308956d1e6bde749f324691dbaf5e6 100644 --- a/src/bin/pg_dump/pg_backup_archiver.c +++ b/src/bin/pg_dump/pg_backup_archiver.c @@ -15,7 +15,7 @@ * * * IDENTIFICATION - * $PostgreSQL: pgsql/src/bin/pg_dump/pg_backup_archiver.c,v 1.151 2007/11/24 20:26:49 tgl Exp $ + * $PostgreSQL: pgsql/src/bin/pg_dump/pg_backup_archiver.c,v 1.152 2008/01/14 19:27:41 tgl Exp $ * *------------------------------------------------------------------------- */ @@ -2528,11 +2528,17 @@ _printTocEntry(ArchiveHandle *AH, TocEntry *te, RestoreOptions *ropt, bool isDat /* * Avoid dumping the public schema, as it will already be created ... * unless we are using --clean mode, in which case it's been deleted and - * we'd better recreate it. + * we'd better recreate it. Likewise for its comment, if any. */ - if (!ropt->dropSchema && - strcmp(te->desc, "SCHEMA") == 0 && strcmp(te->tag, "public") == 0) - return; + if (!ropt->dropSchema) + { + if (strcmp(te->desc, "SCHEMA") == 0 && + strcmp(te->tag, "public") == 0) + return; + if (strcmp(te->desc, "COMMENT") == 0 && + strcmp(te->tag, "SCHEMA public") == 0) + return; + } /* Select owner, schema, and tablespace as necessary */ _becomeOwner(AH, te);