diff options
| author | Bruce Momjian | 2004-05-26 18:27:23 +0000 |
|---|---|---|
| committer | Bruce Momjian | 2004-05-26 18:27:23 +0000 |
| commit | c924c065cddc0ccead4a32605cea56dfe03db5e6 (patch) | |
| tree | 2ad954fd6e47a3feade870b94ee5b89ac02f3464 | |
| parent | 360dcb13413103328e6b0f519561c3a7eff9a232 (diff) | |
[ Backpatch to 7.4.X.]
Fix problem with doing 7.0.X dumps on character varying[] fields.
Christopher Kings-Lynne
| -rw-r--r-- | src/bin/pg_dump/pg_dump.c | 14 |
1 files changed, 13 insertions, 1 deletions
diff --git a/src/bin/pg_dump/pg_dump.c b/src/bin/pg_dump/pg_dump.c index 1ebe39a25b4..ede8ad7c3a6 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.355.2.4 2004/03/02 21:14:59 tgl Exp $ + * $Header: /cvsroot/pgsql/src/bin/pg_dump/pg_dump.c,v 1.355.2.5 2004/05/26 18:27:23 momjian Exp $ * *------------------------------------------------------------------------- */ @@ -6818,8 +6818,16 @@ static char * myFormatType(const char *typname, int32 typmod) { char *result; + bool isarray = false; PQExpBuffer buf = createPQExpBuffer(); + /* Handle array types */ + if (typname[0] == '_') + { + isarray = true; + typname++; + } + /* Show lengths on bpchar and varchar */ if (!strcmp(typname, "bpchar")) { @@ -6863,6 +6871,10 @@ myFormatType(const char *typname, int32 typmod) else appendPQExpBuffer(buf, "%s", fmtId(typname)); + /* Append array qualifier for array types */ + if (isarray) + appendPQExpBuffer(buf, "[]"); + result = strdup(buf->data); destroyPQExpBuffer(buf); |
