diff options
Diffstat (limited to 'app-shells/bash/files/bash-3.0-etc-inputrc.patch')
-rw-r--r-- | app-shells/bash/files/bash-3.0-etc-inputrc.patch | 44 |
1 files changed, 44 insertions, 0 deletions
diff --git a/app-shells/bash/files/bash-3.0-etc-inputrc.patch b/app-shells/bash/files/bash-3.0-etc-inputrc.patch new file mode 100644 index 0000000..204e797 --- /dev/null +++ b/app-shells/bash/files/bash-3.0-etc-inputrc.patch @@ -0,0 +1,44 @@ +Patch readline's bind.c so that /etc/inputrc is read as a last resort +following ~/.inputrc. This is better than putting INPUTRC in +the environment because INPUTRC will override even after the +user creates a ~/.inputrc + +--- bash-3.0/lib/readline/bind.c.agriffis 2004-03-03 22:39:32.000000000 -0500 ++++ bash-3.0/lib/readline/bind.c 2004-08-02 13:53:02.365731918 -0400 +@@ -781,6 +781,7 @@ + 1. the filename used for the previous call + 2. the value of the shell variable `INPUTRC' + 3. ~/.inputrc ++ 4. /etc/inputrc + If the file existed and could be opened and read, 0 is returned, + otherwise errno is returned. */ + int +@@ -789,17 +790,20 @@ + { + /* Default the filename. */ + if (filename == 0) ++ filename = last_readline_init_file; ++ if (filename == 0) ++ filename = sh_get_env_value ("INPUTRC"); ++ if (filename == 0 || *filename == 0) + { +- filename = last_readline_init_file; +- if (filename == 0) +- filename = sh_get_env_value ("INPUTRC"); +- if (filename == 0) +- filename = DEFAULT_INPUTRC; ++ /* If there's trouble reading DEFAULT_INPUTRC then fall back to ++ * the system inputrc ++ */ ++ filename = DEFAULT_INPUTRC; ++ if (_rl_read_init_file (filename, 0) == 0) ++ return 0; ++ filename = "/etc/inputrc"; + } + +- if (*filename == 0) +- filename = DEFAULT_INPUTRC; +- + #if defined (__MSDOS__) + if (_rl_read_init_file (filename, 0) == 0) + return 0; |