summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/common/completion.c8
-rw-r--r--weechat/src/common/completion.c8
2 files changed, 10 insertions, 6 deletions
diff --git a/src/common/completion.c b/src/common/completion.c
index dc4425365..749641f1c 100644
--- a/src/common/completion.c
+++ b/src/common/completion.c
@@ -54,8 +54,10 @@
void
completion_init (t_completion *completion, void *server, void *channel)
{
- completion->server = server;
- completion->channel = channel;
+ if (server)
+ completion->server = server;
+ if (channel)
+ completion->channel = channel;
completion->context = COMPLETION_NULL;
completion->base_command = NULL;
completion->base_command_arg = 0;
@@ -967,7 +969,7 @@ completion_find_context (t_completion *completion, char *buffer, int size, int p
/* look for context */
completion_free (completion);
- completion->add_space = 1;
+ completion_init (completion, NULL, NULL);
command = ((buffer[0] == '/') && (buffer[1] != '/')) ? 1 : 0;
command_arg = 0;
i = 0;
diff --git a/weechat/src/common/completion.c b/weechat/src/common/completion.c
index dc4425365..749641f1c 100644
--- a/weechat/src/common/completion.c
+++ b/weechat/src/common/completion.c
@@ -54,8 +54,10 @@
void
completion_init (t_completion *completion, void *server, void *channel)
{
- completion->server = server;
- completion->channel = channel;
+ if (server)
+ completion->server = server;
+ if (channel)
+ completion->channel = channel;
completion->context = COMPLETION_NULL;
completion->base_command = NULL;
completion->base_command_arg = 0;
@@ -967,7 +969,7 @@ completion_find_context (t_completion *completion, char *buffer, int size, int p
/* look for context */
completion_free (completion);
- completion->add_space = 1;
+ completion_init (completion, NULL, NULL);
command = ((buffer[0] == '/') && (buffer[1] != '/')) ? 1 : 0;
command_arg = 0;
i = 0;