From 7c1c8cd874012939b4a4657cebe004c618f30558 Mon Sep 17 00:00:00 2001 From: Sebastien Helleu Date: Tue, 20 Dec 2005 11:47:24 +0000 Subject: Fixed completion bugs with nick completion in commmands ("%n") --- src/common/completion.c | 4 +++- src/common/completion.h | 1 + 2 files changed, 4 insertions(+), 1 deletion(-) (limited to 'src/common') diff --git a/src/common/completion.c b/src/common/completion.c index a09cfd51b..55c4932d4 100644 --- a/src/common/completion.c +++ b/src/common/completion.c @@ -52,6 +52,7 @@ completion_init (t_completion *completion, void *server, void *channel) completion->context = COMPLETION_NULL; completion->base_command = NULL; completion->base_command_arg = 0; + completion->arg_is_nick = 0; completion->position = -1; completion->base_word = NULL; completion->args = NULL; @@ -351,6 +352,7 @@ completion_list_add_channel_nicks (t_completion *completion) &completion->last_completion, ((t_irc_channel *)(completion->channel))->name); } + completion->arg_is_nick = 1; } } @@ -1135,7 +1137,7 @@ completion_search (t_completion *completion, char *buffer, int size, int pos) break; case COMPLETION_COMMAND_ARG: if (completion->completion_list) - completion_command_arg (completion, 0); + completion_command_arg (completion, completion->arg_is_nick); else completion_nick (completion); break; diff --git a/src/common/completion.h b/src/common/completion.h index 32850dc2a..2ab419f7b 100644 --- a/src/common/completion.h +++ b/src/common/completion.h @@ -38,6 +38,7 @@ struct t_completion int context; /* context: null, nick, command, cmd arg */ char *base_command; /* command with arg to complete (can be NULL) */ int base_command_arg; /* # arg to complete (if context is cmd arg) */ + int arg_is_nick; /* argument is nick */ char *base_word; /* word to complete (when Tab was pressed) */ int base_word_pos; /* beggining of base word */ int position; /* position where Tab was pressed */ -- cgit v1.2.3