diff --git a/src/bin/pg_dump/pg_backup_archiver.c b/src/bin/pg_dump/pg_backup_archiver.c index 1ef3f371f4a3d8ecb9ec5e565686cbb8c93b9821..df8e09c3d28ccf4f16780f80550b7470cf51b0ac 100644 --- a/src/bin/pg_dump/pg_backup_archiver.c +++ b/src/bin/pg_dump/pg_backup_archiver.c @@ -15,7 +15,7 @@ * * * IDENTIFICATION - * $Header: /cvsroot/pgsql/src/bin/pg_dump/pg_backup_archiver.c,v 1.70 2003/03/10 22:28:19 tgl Exp $ + * $Header: /cvsroot/pgsql/src/bin/pg_dump/pg_backup_archiver.c,v 1.71 2003/05/03 22:18:59 tgl Exp $ * *------------------------------------------------------------------------- */ @@ -1916,7 +1916,7 @@ ReadToc(ArchiveHandle *AH) depIdx = 0; do { - if (depIdx > depSize) + if (depIdx >= depSize) { depSize *= 2; deps = realloc(deps, sizeof(char *) * depSize); @@ -1932,7 +1932,10 @@ ReadToc(ArchiveHandle *AH) if (depIdx > 1) /* We have a non-null entry */ te->depOid = realloc(deps, sizeof(char *) * depIdx); /* trim it */ else + { + free(deps); te->depOid = NULL; /* no deps */ + } } else te->depOid = NULL; diff --git a/src/bin/pg_dump/pg_dump.c b/src/bin/pg_dump/pg_dump.c index 84cf3950ec1004d4e727750001f0e34a8756688c..6de655b6cd13b5526358b9b52ebb07811ba1711b 100644 --- a/src/bin/pg_dump/pg_dump.c +++ b/src/bin/pg_dump/pg_dump.c @@ -12,7 +12,7 @@ * by PostgreSQL * * IDENTIFICATION - * $Header: /cvsroot/pgsql/src/bin/pg_dump/pg_dump.c,v 1.327 2003/04/25 02:28:22 tgl Exp $ + * $Header: /cvsroot/pgsql/src/bin/pg_dump/pg_dump.c,v 1.328 2003/05/03 22:18:59 tgl Exp $ * *------------------------------------------------------------------------- */ @@ -3591,7 +3591,7 @@ dumpProcLangs(Archive *fout, FuncInfo finfo[], int numFuncs) resetPQExpBuffer(delqry); /* Make a dependency to ensure function is dumped first */ - deps = malloc(sizeof(char *) * (2 + (strcmp(lanvalidator, "0") != 0) ? 1 : 0)); + deps = malloc(sizeof(char *) * 10); depIdx = 0; (*deps)[depIdx++] = strdup(lanplcallfoid);