aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorNeil Conway <neilc@samurai.com>2004-05-23 22:20:10 +0000
committerNeil Conway <neilc@samurai.com>2004-05-23 22:20:10 +0000
commit256d4639c9d17e4f24531766b3773c0672a06ef2 (patch)
tree67d2bb54d9e950fbfbf13b38eb81be307253475e /src
parent9d6570b8a479c76f2259b45b9281bbc73693876e (diff)
downloadpostgresql-256d4639c9d17e4f24531766b3773c0672a06ef2.tar.gz
postgresql-256d4639c9d17e4f24531766b3773c0672a06ef2.zip
A few cosmetic fixes and code cleanup.
Diffstat (limited to 'src')
-rw-r--r--src/bin/psql/common.c5
-rw-r--r--src/bin/psql/print.c24
2 files changed, 16 insertions, 13 deletions
diff --git a/src/bin/psql/common.c b/src/bin/psql/common.c
index 445064b0c40..681c88cc4e7 100644
--- a/src/bin/psql/common.c
+++ b/src/bin/psql/common.c
@@ -3,7 +3,7 @@
*
* Copyright (c) 2000-2003, PostgreSQL Global Development Group
*
- * $PostgreSQL: pgsql/src/bin/psql/common.c,v 1.86 2004/05/07 00:24:58 tgl Exp $
+ * $PostgreSQL: pgsql/src/bin/psql/common.c,v 1.87 2004/05/23 22:20:10 neilc Exp $
*/
#include "postgres_fe.h"
#include "common.h"
@@ -802,7 +802,8 @@ PrintQueryResults(PGresult *results)
char buf[10];
success = true;
- sprintf(buf, "%u", (unsigned int) PQoidValue(results));
+ snprintf(buf, sizeof(buf),
+ "%u", (unsigned int) PQoidValue(results));
if (!QUIET())
{
if (pset.popt.topt.format == PRINT_HTML)
diff --git a/src/bin/psql/print.c b/src/bin/psql/print.c
index 229b4e0024e..72d6a6e288b 100644
--- a/src/bin/psql/print.c
+++ b/src/bin/psql/print.c
@@ -3,7 +3,7 @@
*
* Copyright (c) 2000-2003, PostgreSQL Global Development Group
*
- * $PostgreSQL: pgsql/src/bin/psql/print.c,v 1.47 2004/05/18 20:18:58 momjian Exp $
+ * $PostgreSQL: pgsql/src/bin/psql/print.c,v 1.48 2004/05/23 22:20:10 neilc Exp $
*/
#include "postgres_fe.h"
#include "common.h"
@@ -1133,15 +1133,14 @@ void
printQuery(const PGresult *result, const printQueryOpt *opt, FILE *fout)
{
int nfields;
+ int ncells;
const char **headers;
const char **cells;
char **footers;
char *align;
int i;
-
/* extract headers */
-
nfields = PQnfields(result);
headers = calloc(nfields + 1, sizeof(*headers));
@@ -1155,15 +1154,15 @@ printQuery(const PGresult *result, const printQueryOpt *opt, FILE *fout)
headers[i] = mbvalidate(PQfname(result, i), opt->topt.encoding);
/* set cells */
-
- cells = calloc(nfields * PQntuples(result) + 1, sizeof(*cells));
+ ncells = PQntuples(result) * nfields;
+ cells = calloc(ncells + 1, sizeof(*cells));
if (!cells)
{
perror("calloc");
exit(EXIT_FAILURE);
}
- for (i = 0; i < nfields * PQntuples(result); i++)
+ for (i = 0; i < ncells; i++)
{
if (PQgetisnull(result, i / nfields, i % nfields))
cells[i] = opt->nullPrint ? opt->nullPrint : "";
@@ -1185,6 +1184,11 @@ printQuery(const PGresult *result, const printQueryOpt *opt, FILE *fout)
}
footers[0] = malloc(100);
+ if (!footers[0])
+ {
+ perror("malloc");
+ exit(EXIT_FAILURE);
+ }
if (PQntuples(result) == 1)
snprintf(footers[0], 100, gettext("(1 row)"));
else
@@ -1194,7 +1198,6 @@ printQuery(const PGresult *result, const printQueryOpt *opt, FILE *fout)
footers = NULL;
/* set alignment */
-
align = calloc(nfields + 1, sizeof(*align));
if (!align)
{
@@ -1221,13 +1224,12 @@ printQuery(const PGresult *result, const printQueryOpt *opt, FILE *fout)
}
/* call table printer */
-
printTable(opt->title, headers, cells,
- footers ? (const char *const *) footers : (const char *const *) (opt->footers),
+ (const char *const *) footers,
align, &opt->topt, fout);
- free((void *) headers);
- free((void *) cells);
+ free(headers);
+ free(cells);
if (footers)
{
free(footers[0]);