diff options
-rw-r--r-- | ChangeLog | 5 | ||||
-rw-r--r-- | ext/readline/readline.c | 7 |
2 files changed, 9 insertions, 3 deletions
@@ -1,3 +1,8 @@ +Fri May 20 15:52:18 2005 Shugo Maeda <shugo@ruby-lang.org> + + * ext/readline/readline.c (readline_attempted_completion_function): + return 2 items if completion_proc returns only 1 item (for libedit). + Fri May 20 01:24:33 2005 Shugo Maeda <shugo@ruby-lang.org> * ext/readline/extconf.rb: check rl_vi_editing_mode() and diff --git a/ext/readline/readline.c b/ext/readline/readline.c index 0b7673b75f..d5c2324d8e 100644 --- a/ext/readline/readline.c +++ b/ext/readline/readline.c @@ -4,6 +4,7 @@ #include <errno.h> #include <stdio.h> #include <ctype.h> +#include <string.h> #ifdef HAVE_READLINE_READLINE_H #include <readline/readline.h> #endif @@ -167,9 +168,9 @@ readline_attempted_completion_function(text, start, end) result[matches + 1] = NULL; if (matches == 1) { - result[0] = result[1]; - result[1] = NULL; - } else { + result[0] = strdup(result[1]); + } + else { register int i = 1; int low = 100000; |