mirror of
https://github.com/postgres/postgres.git
synced 2025-06-29 10:41:53 +03:00
One-letter backslash commands now need a space before the first argument.
This has been the only documented and encouraged syntax for a long time, and with extension facilities such as aliases being proposed, it is a good time to clean up the legacy syntax a bit. Author: Bernd Helmle <mailings@oopsware.de>
This commit is contained in:
@ -3,7 +3,7 @@
|
||||
*
|
||||
* Copyright (c) 2000-2008, PostgreSQL Global Development Group
|
||||
*
|
||||
* $PostgreSQL: pgsql/src/bin/psql/command.c,v 1.186 2008/01/01 19:45:55 momjian Exp $
|
||||
* $PostgreSQL: pgsql/src/bin/psql/command.c,v 1.187 2008/05/02 09:27:50 petere Exp $
|
||||
*/
|
||||
#include "postgres_fe.h"
|
||||
#include "command.h"
|
||||
@ -90,30 +90,6 @@ HandleSlashCmds(PsqlScanState scan_state,
|
||||
/* And try to execute it */
|
||||
status = exec_command(cmd, scan_state, query_buf);
|
||||
|
||||
if (status == PSQL_CMD_UNKNOWN && strlen(cmd) > 1)
|
||||
{
|
||||
/*
|
||||
* If the command was not recognized, try to parse it as a one-letter
|
||||
* command with immediately following argument (a still-supported, but
|
||||
* no longer encouraged, syntax).
|
||||
*/
|
||||
char new_cmd[2];
|
||||
|
||||
/* don't change cmd until we know it's okay */
|
||||
new_cmd[0] = cmd[0];
|
||||
new_cmd[1] = '\0';
|
||||
|
||||
psql_scan_slash_pushback(scan_state, cmd + 1);
|
||||
|
||||
status = exec_command(new_cmd, scan_state, query_buf);
|
||||
|
||||
if (status != PSQL_CMD_UNKNOWN)
|
||||
{
|
||||
/* adjust cmd for possible messages below */
|
||||
cmd[1] = '\0';
|
||||
}
|
||||
}
|
||||
|
||||
if (status == PSQL_CMD_UNKNOWN)
|
||||
{
|
||||
if (pset.cur_cmd_interactive)
|
||||
|
Reference in New Issue
Block a user