postgres.git / summary / log / commit / refs

commit    921de09e40677304c8be5aca1f5526fa5b0adb25
Author:   Bruce Momjian <bruce@momjian.us>
Date:     Tue Jun 14 22:15:57 2005 +0000
First released in: 8.1.0

    Use '&nbsp;' escapes for leading spaces in table values, for use in
    EXPLAIN output.
    
    Jean-Paul Argudo


src/bin/psql/print.c | 16 ++++++++++++++-- 1 file changed, 14 insertions(+), 2 deletions(-) diff --git a/src/bin/psql/print.c b/src/bin/psql/print.c index d1ef95f50a6..9f605b088ed 100644 --- a/src/bin/psql/print.c +++ b/src/bin/psql/print.c @@ -3,7 +3,7 @@ * * Copyright (c) 2000-2005, PostgreSQL Global Development Group * - * $PostgreSQL: pgsql/src/bin/psql/print.c,v 1.59 2005/06/14 02:57:41 momjian Exp $ + * $PostgreSQL: pgsql/src/bin/psql/print.c,v 1.60 2005/06/14 22:15:57 momjian Exp $ */ #include "postgres_fe.h" #include "common.h" @@ -595,8 +595,10 @@ void html_escaped_print(const char *in, FILE *fout) { const char *p; - + bool leading_space = true; + for (p = in; *p; p++) + { switch (*p) { case '&': @@ -617,9 +619,19 @@ html_escaped_print(const char *in, FILE *fout) case '\'': fputs("&apos;", fout); break; + case ' ': + /* protect leading space, for EXPLAIN output */ + if (leading_space) + fputs("&nbsp;", fout); + else + fputs(" ", fout); + break; default: fputc(*p, fout); } + if (*p != ' ') + leading_space = false; + } } [parent: 8563ccae2caf]