Adjust extra lines generated by psql to be valid SQL comments.
authorNathan Bossart <nathan@postgresql.org>
Thu, 27 Jul 2023 00:02:39 +0000 (17:02 -0700)
committerNathan Bossart <nathan@postgresql.org>
Thu, 27 Jul 2023 00:02:39 +0000 (17:02 -0700)
psql's --echo-hidden, --log-file, and --single-step options
generate extra lines to clearly separate queries from other output.
Presently, these extra lines are not valid SQL comments, which
makes them a hazard for anyone trying to copy/paste the decorated
queries into a client or query editor.  This commit replaces the
starting and ending asterisks in these extra lines with forward
slashes so that they are valid SQL comments that can be copy/pasted
without incident.

Author: Kirk Wolak
Reviewed-by: Pavel Stehule, Laurenz Albe, Tom Lane, Alvaro Herrera, Andrey Borodin
Discussion: https://postgr.es/m/CACLU5mTFJRJYtbvmZ26txGgmXWQo0hkGhH2o3hEquUPmSbGtBw%40mail.gmail.com

src/bin/psql/command.c
src/bin/psql/common.c

index 6733f008fd55e28ad6dbb3b1d2a8de17beb45840..1300869d797a32442b6d13dd861fea90c3330f16 100644 (file)
@@ -5395,16 +5395,16 @@ echo_hidden_command(const char *query)
 {
    if (pset.echo_hidden != PSQL_ECHO_HIDDEN_OFF)
    {
-       printf(_("********* QUERY **********\n"
+       printf(_("/******** QUERY *********/\n"
                 "%s\n"
-                "**************************\n\n"), query);
+                "/************************/\n\n"), query);
        fflush(stdout);
        if (pset.logfile)
        {
            fprintf(pset.logfile,
-                   _("********* QUERY **********\n"
+                   _("/******** QUERY *********/\n"
                      "%s\n"
-                     "**************************\n\n"), query);
+                     "/************************/\n\n"), query);
            fflush(pset.logfile);
        }
 
index 5973df2e39e2a5ce498a144c0d60f4f71dd8178d..10ad1f2538d749c0da7e1cae53b7a01875bfec8b 100644 (file)
@@ -589,16 +589,16 @@ PSQLexec(const char *query)
 
    if (pset.echo_hidden != PSQL_ECHO_HIDDEN_OFF)
    {
-       printf(_("********* QUERY **********\n"
+       printf(_("/******** QUERY *********/\n"
                 "%s\n"
-                "**************************\n\n"), query);
+                "/************************/\n\n"), query);
        fflush(stdout);
        if (pset.logfile)
        {
            fprintf(pset.logfile,
-                   _("********* QUERY **********\n"
+                   _("/******** QUERY *********/\n"
                      "%s\n"
-                     "**************************\n\n"), query);
+                     "/************************/\n\n"), query);
            fflush(pset.logfile);
        }
 
@@ -1060,9 +1060,9 @@ SendQuery(const char *query)
        char        buf[3];
 
        fflush(stderr);
-       printf(_("***(Single step mode: verify command)*******************************************\n"
+       printf(_("/**(Single step mode: verify command)******************************************/\n"
                 "%s\n"
-                "***(press return to proceed or enter x and return to cancel)********************\n"),
+                "/**(press return to proceed or enter x and return to cancel)*******************/\n"),
               query);
        fflush(stdout);
        if (fgets(buf, sizeof(buf), stdin) != NULL)
@@ -1080,9 +1080,9 @@ SendQuery(const char *query)
    if (pset.logfile)
    {
        fprintf(pset.logfile,
-               _("********* QUERY **********\n"
+               _("/******** QUERY *********/\n"
                  "%s\n"
-                 "**************************\n\n"), query);
+                 "/************************/\n\n"), query);
        fflush(pset.logfile);
    }