From: Heikki Linnakangas Date: Tue, 15 Jan 2013 16:54:03 +0000 (+0200) Subject: Don't pass NULL to fprintf, if not currently connected to a database. X-Git-Tag: REL8_4_16~15 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=20df7e9053799ee80e4e97088c5398dbdd76196f;p=postgresql Don't pass NULL to fprintf, if not currently connected to a database. Backpatch all the way to 8.3. Fixes bug #7811, per report and diagnosis by Meng Qingzhong. --- diff --git a/src/bin/psql/help.c b/src/bin/psql/help.c index bf3cc25b4c..12ea5fdac0 100644 --- a/src/bin/psql/help.c +++ b/src/bin/psql/help.c @@ -161,6 +161,11 @@ void slashUsage(unsigned short int pager) { FILE *output; + char *currdb; + + currdb = PQdb(pset.db); + if (currdb == NULL) + currdb = _("none"); output = PageOutput(86, pager); @@ -244,7 +249,7 @@ slashUsage(unsigned short int pager) fprintf(output, _("Connection\n")); fprintf(output, _(" \\c[onnect] [DBNAME|- USER|- HOST|- PORT|-]\n" " connect to new database (currently \"%s\")\n"), - PQdb(pset.db)); + currdb); fprintf(output, _(" \\encoding [ENCODING] show or set client encoding\n")); fprintf(output, _(" \\password [USERNAME] securely change the password for a user\n")); fprintf(output, "\n");