aboutsummaryrefslogtreecommitdiff
path: root/src/nvim/edit.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/nvim/edit.c')
-rw-r--r--src/nvim/edit.c53
1 files changed, 21 insertions, 32 deletions
diff --git a/src/nvim/edit.c b/src/nvim/edit.c
index 49bc2ab2f0..a8dd115074 100644
--- a/src/nvim/edit.c
+++ b/src/nvim/edit.c
@@ -2522,8 +2522,7 @@ static void ins_compl_del_pum(void)
{
if (compl_match_array != NULL) {
pum_undisplay(false);
- xfree(compl_match_array);
- compl_match_array = NULL;
+ XFREE_CLEAR(compl_match_array);
}
}
@@ -2587,16 +2586,16 @@ void ins_compl_show_pum(void)
// Need to build the popup menu list.
compl_match_arraysize = 0;
compl = compl_first_match;
- /*
- * If it's user complete function and refresh_always,
- * not use "compl_leader" as prefix filter.
- */
- if (ins_compl_need_restart()){
- xfree(compl_leader);
- compl_leader = NULL;
- }
- if (compl_leader != NULL)
+ //
+ // If it's user complete function and refresh_always,
+ // do not use "compl_leader" as prefix filter.
+ //
+ if (ins_compl_need_restart()) {
+ XFREE_CLEAR(compl_leader);
+ }
+ if (compl_leader != NULL) {
lead_len = (int)STRLEN(compl_leader);
+ }
do {
if ((compl->cp_flags & ORIGINAL_TEXT) == 0
&& (compl_leader == NULL
@@ -2960,10 +2959,8 @@ static void ins_compl_free(void)
compl_T *match;
int i;
- xfree(compl_pattern);
- compl_pattern = NULL;
- xfree(compl_leader);
- compl_leader = NULL;
+ XFREE_CLEAR(compl_pattern);
+ XFREE_CLEAR(compl_leader);
if (compl_first_match == NULL)
return;
@@ -2993,14 +2990,11 @@ static void ins_compl_clear(void)
compl_cont_status = 0;
compl_started = FALSE;
compl_matches = 0;
- xfree(compl_pattern);
- compl_pattern = NULL;
- xfree(compl_leader);
- compl_leader = NULL;
+ XFREE_CLEAR(compl_pattern);
+ XFREE_CLEAR(compl_leader);
edit_submode_extra = NULL;
- xfree(compl_orig_text);
- compl_orig_text = NULL;
- compl_enter_selects = FALSE;
+ XFREE_CLEAR(compl_orig_text);
+ compl_enter_selects = false;
// clear v:completed_item
set_vim_var_dict(VV_COMPLETED_ITEM, tv_dict_alloc());
}
@@ -4960,10 +4954,8 @@ static int ins_complete(int c, bool enable_pum)
compl_orig_text = vim_strnsave(line + compl_col, compl_length);
if (ins_compl_add(compl_orig_text, -1, p_ic, NULL, NULL, false, 0,
ORIGINAL_TEXT, false, false) != OK) {
- xfree(compl_pattern);
- compl_pattern = NULL;
- xfree(compl_orig_text);
- compl_orig_text = NULL;
+ XFREE_CLEAR(compl_pattern);
+ XFREE_CLEAR(compl_orig_text);
return FAIL;
}
@@ -6310,10 +6302,8 @@ void set_last_insert(int c)
#if defined(EXITFREE)
void free_last_insert(void)
{
- xfree(last_insert);
- last_insert = NULL;
- xfree(compl_orig_text);
- compl_orig_text = NULL;
+ XFREE_CLEAR(last_insert);
+ XFREE_CLEAR(compl_orig_text);
}
#endif
@@ -6840,8 +6830,7 @@ static void mb_replace_pop_ins(int cc)
*/
static void replace_flush(void)
{
- xfree(replace_stack);
- replace_stack = NULL;
+ XFREE_CLEAR(replace_stack);
replace_stack_len = 0;
replace_stack_nr = 0;
}