On Mon, May 29, 2017 at 04:17:16PM -0400, Chet Ramey wrote:
[...]
> So the bug is that readline doesn't print an error message if the history
> file isn't a regular file?

Correct. Another problem is that the history builtin doesn't propagate
back a meaningful return code indicating that there was a problem.

A simple example is that you're trying to seed your history by appending
the output of a command using `history -r'. So you might try:

| $ history -cr <(echo a complex command); echo $?; history
| 0

But for some reason that doesn't work and there is no apparent problem
with it. 

Whereas the following does work:

| $ history -cr /dev/stdin <<<'a complex command'; echo $?; history
| 0
|     1  a complex command

Or, which indicates that something went wrong:

| $ history -cr /tmp; echo $?; history
| 1

In my opinion it should at least return an error code. And if possible
an error message.

The other option is to implement support for reading from non-regular
files, but I'm not sure if it's worth it.

-- 
Eduardo Bustamante
https://dualbus.me/

Reply via email to