BUG #15002: Unexpected behaviour in psql \r command - Mailing list pgsql-bugs

From PG Bug reporting form
Subject BUG #15002: Unexpected behaviour in psql \r command
Date
Msg-id 20180109174510.21778.96128@wrigleys.postgresql.org
Whole thread Raw
Responses Re: BUG #15002: Unexpected behaviour in psql \r command
List pgsql-bugs
The following bug has been logged on the website:

Bug reference:      15002
Logged by:          Petr Korobeinikov
Email address:      pkorobeinikov@gmail.com
PostgreSQL version: 10.0
Operating system:   Any (reproduced in macOS Sierra, Slackware)
Description:

Dear hackers!

Unexpected behaviour of \r subcommand has been introduced in 10.0
(e984ef5861df4bc9733b36271d05763e82de7c04).

Previously (at least in 9.6) previous_buf hasn’t been used for any kinds of
\e subcommand.
Now if query_buf is empty previous buffer contents is used.

It makes useless \r subcommand in cases when clean buffer required in next
\e.
Multiple calls of \r takes no effect.

Code snippet:
```
794 +
795 +               /* Applies to previous query if current buffer is empty
*/
796 +               copy_previous_query(query_buf, previous_buf);
797 +
798                 if (do_edit(fname, query_buf, lineno, NULL))
799                     status = PSQL_CMD_NEWEDIT;
```


pgsql-bugs by date:

Previous
From: Tom Lane
Date:
Subject: Re: BUG #14932: SELECT DISTINCT val FROM table gets stuck in an infinite loop
Next
From: "David G. Johnston"
Date:
Subject: Re: BUG #15002: Unexpected behaviour in psql \r command