diff options
Diffstat (limited to 'src/bin/psql/prompt.c')
| -rw-r--r-- | src/bin/psql/prompt.c | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/src/bin/psql/prompt.c b/src/bin/psql/prompt.c index b08d7328fbf..59a2ceee07a 100644 --- a/src/bin/psql/prompt.c +++ b/src/bin/psql/prompt.c @@ -34,6 +34,7 @@ * %P - pipeline status: on, off or abort * %> - database server port number * %n - database user name + * %S - search_path * %s - service * %/ - current database * %~ - like %/ but "~" when database name equals user name @@ -167,6 +168,16 @@ get_prompt(promptStatus_t status, ConditionalStack cstack) if (pset.db) strlcpy(buf, session_username(), sizeof(buf)); break; + /* search_path */ + case 'S': + if (pset.db) + { + const char *sp = PQparameterStatus(pset.db, "search_path"); + + /* Use ? for versions that don't report search_path. */ + strlcpy(buf, sp ? sp : "?", sizeof(buf)); + } + break; /* service name */ case 's': { |
