From 847f8b39d745a1d364df49feefdf71ee05c562df Mon Sep 17 00:00:00 2001 From: Bruce Momjian Date: Fri, 6 Sep 2002 02:33:47 +0000 Subject: [PATCH] Fix printf() quote handling and improper exit(), per Tom. --- src/bin/psql/input.c | 12 ++++++------ src/bin/psql/startup.c | 10 +++++----- src/interfaces/libpq/fe-connect.c | 11 +++++------ 3 files changed, 16 insertions(+), 17 deletions(-) diff --git a/src/bin/psql/input.c b/src/bin/psql/input.c index 7ac1110266..6bf18c757c 100644 --- a/src/bin/psql/input.c +++ b/src/bin/psql/input.c @@ -3,7 +3,7 @@ * * Copyright 2000 by PostgreSQL Global Development Group * - * $Header: /cvsroot/pgsql/src/bin/psql/input.c,v 1.20 2002/09/05 22:05:50 momjian Exp $ + * $Header: /cvsroot/pgsql/src/bin/psql/input.c,v 1.21 2002/09/06 02:33:46 momjian Exp $ */ #include "postgres_fe.h" #include "input.h" @@ -30,7 +30,7 @@ static void finishInput(void); static void finishInput(int, void *); #endif -#define PSQLHISTORY "/.psql_history" +#define PSQLHISTORY ".psql_history" /* @@ -144,12 +144,12 @@ initializeInput(int flags) home = getenv("HOME"); if (home) { - char *psql_history = (char *) malloc(strlen(home) + + char *psql_history = (char *) malloc(strlen(home) + 1 + strlen(PSQLHISTORY) + 1); if (psql_history) { - sprintf(psql_history, "%s" PSQLHISTORY, home); + sprintf(psql_history, "%s/%s", home, PSQLHISTORY); read_history(psql_history); free(psql_history); } @@ -204,7 +204,7 @@ finishInput(int exitstatus, void *arg) home = getenv("HOME"); if (home) { - psql_history = (char *) malloc(strlen(home) + + psql_history = (char *) malloc(strlen(home) + 1 + strlen(PSQLHISTORY) + 1); if (psql_history) { @@ -212,7 +212,7 @@ finishInput(int exitstatus, void *arg) if (var) stifle_history(atoi(var)); - sprintf(psql_history, "%s" PSQLHISTORY, home); + sprintf(psql_history, "%s/%s", home, PSQLHISTORY); write_history(psql_history); free(psql_history); } diff --git a/src/bin/psql/startup.c b/src/bin/psql/startup.c index 1ab0ac8524..5cdee36588 100644 --- a/src/bin/psql/startup.c +++ b/src/bin/psql/startup.c @@ -3,7 +3,7 @@ * * Copyright 2000 by PostgreSQL Global Development Group * - * $Header: /cvsroot/pgsql/src/bin/psql/startup.c,v 1.65 2002/09/05 22:05:50 momjian Exp $ + * $Header: /cvsroot/pgsql/src/bin/psql/startup.c,v 1.66 2002/09/06 02:33:47 momjian Exp $ */ #include "postgres_fe.h" @@ -42,7 +42,7 @@ */ PsqlSettings pset; -#define PSQLRC "/.psqlrc" +#define PSQLRC ".psqlrc" /* * Structures to pass information between the option parsing routine @@ -605,7 +605,7 @@ process_psqlrc(void) if (home) { - psqlrc = malloc(strlen(home) + strlen(PSQLRC) + 1 + + psqlrc = malloc(strlen(home) + 1 + strlen(PSQLRC) + 1 + strlen(PG_VERSION) + 1); if (!psqlrc) { @@ -613,12 +613,12 @@ process_psqlrc(void) exit(EXIT_FAILURE); } - sprintf(psqlrc, "%s" PSQLRC "-" PG_VERSION, home); + sprintf(psqlrc, "%s/%s-%s", home, PSQLRC, PG_VERSION); if (access(psqlrc, R_OK) == 0) process_file(psqlrc); else { - sprintf(psqlrc, "%s" PSQLRC, home); + sprintf(psqlrc, "%s/%s", home, PSQLRC); if (access(psqlrc, R_OK) == 0) process_file(psqlrc); } diff --git a/src/interfaces/libpq/fe-connect.c b/src/interfaces/libpq/fe-connect.c index 5d683cde56..3c936fb8be 100644 --- a/src/interfaces/libpq/fe-connect.c +++ b/src/interfaces/libpq/fe-connect.c @@ -8,7 +8,7 @@ * * * IDENTIFICATION - * $Header: /cvsroot/pgsql/src/interfaces/libpq/fe-connect.c,v 1.203 2002/09/05 22:24:23 momjian Exp $ + * $Header: /cvsroot/pgsql/src/interfaces/libpq/fe-connect.c,v 1.204 2002/09/06 02:33:47 momjian Exp $ * *------------------------------------------------------------------------- */ @@ -66,7 +66,7 @@ inet_aton(const char *cp, struct in_addr * inp) #define NOTIFYLIST_INITIAL_SIZE 10 #define NOTIFYLIST_GROWBY 10 -#define PGPASSFILE "/.pgpass" +#define PGPASSFILE ".pgpass" /* ---------- * Definition of the conninfo parameters and their fallback resources. @@ -2927,18 +2927,17 @@ PasswordFromFile(char *hostname, char *port, char *dbname, char *username) home = getenv("HOME"); if (home) { - pgpassfile = malloc(strlen(home) + strlen(PGPASSFILE) + 1); + pgpassfile = malloc(strlen(home) + 1 + strlen(PGPASSFILE) + 1); if (!pgpassfile) { - fprintf(stderr, libpq_gettext("out of memory\n")); - exit(EXIT_FAILURE); + return NULL; } } else return NULL; - sprintf(pgpassfile, "%s" PGPASSFILE, home); + sprintf(pgpassfile, "%s/%s", home, PGPASSFILE); /* If password file cannot be opened, ignore it. */ if (stat(pgpassfile, &stat_buf) == -1)