aboutsummaryrefslogtreecommitdiff
path: root/src/nvim/syntax.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/nvim/syntax.c')
-rw-r--r--src/nvim/syntax.c150
1 files changed, 75 insertions, 75 deletions
diff --git a/src/nvim/syntax.c b/src/nvim/syntax.c
index 7be7c26954..8c32e5f06a 100644
--- a/src/nvim/syntax.c
+++ b/src/nvim/syntax.c
@@ -959,7 +959,7 @@ static void syn_stack_free_block(synblock_T *block)
if (block->b_sst_array != NULL) {
for (p = block->b_sst_first; p != NULL; p = p->sst_next)
clear_syn_state(p);
- free(block->b_sst_array);
+ xfree(block->b_sst_array);
block->b_sst_array = NULL;
block->b_sst_len = 0;
}
@@ -1044,7 +1044,7 @@ static void syn_stack_alloc(void)
to->sst_next = to + 1;
(sstp + len - 1)->sst_next = NULL;
- free(syn_block->b_sst_array);
+ xfree(syn_block->b_sst_array);
syn_block->b_sst_array = sstp;
syn_block->b_sst_len = len;
}
@@ -3054,7 +3054,7 @@ void syntax_clear(synblock_T *block)
vim_regfree(block->b_syn_linecont_prog);
block->b_syn_linecont_prog = NULL;
- free(block->b_syn_linecont_pat);
+ xfree(block->b_syn_linecont_pat);
block->b_syn_linecont_pat = NULL;
block->b_syn_folditems = 0;
@@ -3073,7 +3073,7 @@ void reset_synblock(win_T *wp)
{
if (wp->w_s != &wp->w_buffer->b_s) {
syntax_clear(wp->w_s);
- free(wp->w_s);
+ xfree(wp->w_s);
wp->w_s = &wp->w_buffer->b_s;
}
}
@@ -3097,7 +3097,7 @@ static void syntax_sync_clear(void)
vim_regfree(curwin->w_s->b_syn_linecont_prog);
curwin->w_s->b_syn_linecont_prog = NULL;
- free(curwin->w_s->b_syn_linecont_pat);
+ xfree(curwin->w_s->b_syn_linecont_pat);
curwin->w_s->b_syn_linecont_pat = NULL;
syn_stack_free_all(curwin->w_s); /* Need to recompute all syntax. */
@@ -3125,13 +3125,13 @@ static void syn_remove_pattern(synblock_T *block, int idx)
*/
static void syn_clear_pattern(synblock_T *block, int i)
{
- free(SYN_ITEMS(block)[i].sp_pattern);
+ xfree(SYN_ITEMS(block)[i].sp_pattern);
vim_regfree(SYN_ITEMS(block)[i].sp_prog);
/* Only free sp_cont_list and sp_next_list of first start pattern */
if (i == 0 || SYN_ITEMS(block)[i - 1].sp_type != SPTYPE_START) {
- free(SYN_ITEMS(block)[i].sp_cont_list);
- free(SYN_ITEMS(block)[i].sp_next_list);
- free(SYN_ITEMS(block)[i].sp_syn.cont_in_list);
+ xfree(SYN_ITEMS(block)[i].sp_cont_list);
+ xfree(SYN_ITEMS(block)[i].sp_next_list);
+ xfree(SYN_ITEMS(block)[i].sp_syn.cont_in_list);
}
}
@@ -3140,9 +3140,9 @@ static void syn_clear_pattern(synblock_T *block, int i)
*/
static void syn_clear_cluster(synblock_T *block, int i)
{
- free(SYN_CLSTR(block)[i].scl_name);
- free(SYN_CLSTR(block)[i].scl_name_u);
- free(SYN_CLSTR(block)[i].scl_list);
+ xfree(SYN_CLSTR(block)[i].scl_name);
+ xfree(SYN_CLSTR(block)[i].scl_name_u);
+ xfree(SYN_CLSTR(block)[i].scl_list);
}
/*
@@ -3198,7 +3198,7 @@ static void syn_cmd_clear(exarg_T *eap, int syncing)
*/
short scl_id = id - SYNID_CLUSTER;
- free(SYN_CLSTR(curwin->w_s)[scl_id].scl_list);
+ xfree(SYN_CLSTR(curwin->w_s)[scl_id].scl_list);
SYN_CLSTR(curwin->w_s)[scl_id].scl_list = NULL;
}
} else {
@@ -3760,9 +3760,9 @@ static void syn_clear_keyword(int id, hashtab_T *ht)
hi->hi_key = KE2HIKEY(kp_next);
} else
kp_prev->ke_next = kp_next;
- free(kp->next_list);
- free(kp->k_syn.cont_in_list);
- free(kp);
+ xfree(kp->next_list);
+ xfree(kp->k_syn.cont_in_list);
+ xfree(kp);
kp = kp_next;
} else {
kp_prev = kp;
@@ -3789,9 +3789,9 @@ static void clear_keywtab(hashtab_T *ht)
--todo;
for (kp = HI2KE(hi); kp != NULL; kp = kp_next) {
kp_next = kp->ke_next;
- free(kp->next_list);
- free(kp->k_syn.cont_in_list);
- free(kp);
+ xfree(kp->next_list);
+ xfree(kp->k_syn.cont_in_list);
+ xfree(kp);
}
}
}
@@ -4011,12 +4011,12 @@ get_syn_options (
}
if (i < 0) {
EMSG2(_("E394: Didn't find region item for %s"), gname);
- free(gname);
+ xfree(gname);
return NULL;
}
}
- free(gname);
+ xfree(gname);
arg = skipwhite(arg);
} else if (flagtab[fidx].flags == HL_FOLD
&& foldmethodIsSyntax(curwin))
@@ -4208,9 +4208,9 @@ static void syn_cmd_keyword(exarg_T *eap, int syncing)
}
}
- free(keyword_copy);
- free(syn_opt_arg.cont_in_list);
- free(syn_opt_arg.next_list);
+ xfree(keyword_copy);
+ xfree(syn_opt_arg.cont_in_list);
+ xfree(syn_opt_arg.next_list);
}
if (rest != NULL)
@@ -4311,10 +4311,10 @@ syn_cmd_match (
* Something failed, free the allocated memory.
*/
vim_regfree(item.sp_prog);
- free(item.sp_pattern);
- free(syn_opt_arg.cont_list);
- free(syn_opt_arg.cont_in_list);
- free(syn_opt_arg.next_list);
+ xfree(item.sp_pattern);
+ xfree(syn_opt_arg.cont_list);
+ xfree(syn_opt_arg.cont_in_list);
+ xfree(syn_opt_arg.next_list);
if (rest == NULL)
EMSG2(_(e_invarg2), arg);
@@ -4388,7 +4388,7 @@ syn_cmd_region (
key_end = rest;
while (*key_end && !vim_iswhite(*key_end) && *key_end != '=')
++key_end;
- free(key);
+ xfree(key);
key = vim_strnsave_up(rest, (int)(key_end - rest));
if (STRCMP(key, "MATCHGROUP") == 0)
item = ITEM_MATCHGROUP;
@@ -4456,7 +4456,7 @@ syn_cmd_region (
++pat_count;
}
}
- free(key);
+ xfree(key);
if (illegal || not_enough)
rest = NULL;
@@ -4530,17 +4530,17 @@ syn_cmd_region (
for (ppp = pat_ptrs[item]; ppp != NULL; ppp = ppp_next) {
if (!success) {
vim_regfree(ppp->pp_synp->sp_prog);
- free(ppp->pp_synp->sp_pattern);
+ xfree(ppp->pp_synp->sp_pattern);
}
- free(ppp->pp_synp);
+ xfree(ppp->pp_synp);
ppp_next = ppp->pp_next;
- free(ppp);
+ xfree(ppp);
}
if (!success) {
- free(syn_opt_arg.cont_list);
- free(syn_opt_arg.cont_in_list);
- free(syn_opt_arg.next_list);
+ xfree(syn_opt_arg.cont_list);
+ xfree(syn_opt_arg.cont_in_list);
+ xfree(syn_opt_arg.next_list);
if (not_enough)
EMSG2(_("E399: Not enough arguments: syntax region %s"), arg);
else if (illegal || rest == NULL)
@@ -4580,11 +4580,11 @@ static void syn_combine_list(short **clstr1, short **clstr2, int list_op)
return;
if (*clstr1 == NULL || list_op == CLUSTER_REPLACE) {
if (list_op == CLUSTER_REPLACE)
- free(*clstr1);
+ xfree(*clstr1);
if (list_op == CLUSTER_REPLACE || list_op == CLUSTER_ADD)
*clstr1 = *clstr2;
else
- free(*clstr2);
+ xfree(*clstr2);
return;
}
@@ -4668,8 +4668,8 @@ static void syn_combine_list(short **clstr1, short **clstr2, int list_op)
/*
* Finally, put the new list in place.
*/
- free(*clstr1);
- free(*clstr2);
+ xfree(*clstr1);
+ xfree(*clstr2);
*clstr1 = clstr;
}
@@ -4688,7 +4688,7 @@ static int syn_scl_name2id(char_u *name)
break;
}
}
- free(name_u);
+ xfree(name_u);
return i < 0 ? 0 : i + SYNID_CLUSTER;
}
@@ -4699,7 +4699,7 @@ static int syn_scl_namen2id(char_u *linep, int len)
{
char_u *name = vim_strnsave(linep, len);
int id = syn_scl_name2id(name);
- free(name);
+ xfree(name);
return id;
}
@@ -4721,7 +4721,7 @@ static int syn_check_cluster(char_u *pp, int len)
if (id == 0) /* doesn't exist yet */
id = syn_add_cluster(name);
else
- free(name);
+ xfree(name);
return id;
}
@@ -4743,7 +4743,7 @@ static int syn_add_cluster(char_u *name)
int len = curwin->w_s->b_syn_clusters.ga_len;
if (len >= MAX_CLUSTER_ID) {
EMSG((char_u *)_("E848: Too many syntax clusters"));
- free(name);
+ xfree(name);
return 0;
}
@@ -4945,7 +4945,7 @@ static void syn_cmd_sync(exarg_T *eap, int syncing)
while (!ends_excmd(*arg_start)) {
arg_end = skiptowhite(arg_start);
next_arg = skipwhite(arg_end);
- free(key);
+ xfree(key);
key = vim_strnsave_up(arg_start, (int)(arg_end - arg_start));
if (STRCMP(key, "CCOMMENT") == 0) {
if (!eap->skip)
@@ -5013,7 +5013,7 @@ static void syn_cmd_sync(exarg_T *eap, int syncing)
syn_clear_time(&curwin->w_s->b_syn_linecont_time);
if (curwin->w_s->b_syn_linecont_prog == NULL) {
- free(curwin->w_s->b_syn_linecont_pat);
+ xfree(curwin->w_s->b_syn_linecont_pat);
curwin->w_s->b_syn_linecont_pat = NULL;
finished = TRUE;
break;
@@ -5035,7 +5035,7 @@ static void syn_cmd_sync(exarg_T *eap, int syncing)
}
arg_start = next_arg;
}
- free(key);
+ xfree(key);
if (illegal)
EMSG2(_("E404: Illegal arguments: %s"), arg_start);
else if (!finished) {
@@ -5109,13 +5109,13 @@ get_id_list (
if (TOUPPER_ASC(**arg) != 'C') {
EMSG2(_("E407: %s not allowed here"), name + 1);
failed = TRUE;
- free(name);
+ xfree(name);
break;
}
if (count != 0) {
EMSG2(_("E408: %s must be first in contains list"), name + 1);
failed = TRUE;
- free(name);
+ xfree(name);
break;
}
if (name[1] == 'A')
@@ -5142,7 +5142,7 @@ get_id_list (
regmatch.regprog = vim_regcomp(name, RE_MAGIC);
if (regmatch.regprog == NULL) {
failed = TRUE;
- free(name);
+ xfree(name);
break;
}
@@ -5156,7 +5156,7 @@ get_id_list (
* "contains=a.*b,axb".
* Go back to first round */
if (count >= total_count) {
- free(retval);
+ xfree(retval);
round = 1;
} else
retval[count] = i + 1;
@@ -5168,7 +5168,7 @@ get_id_list (
vim_regfree(regmatch.regprog);
}
}
- free(name);
+ xfree(name);
if (id == 0) {
EMSG2(_("E409: Unknown group name: %s"), p);
failed = TRUE;
@@ -5178,7 +5178,7 @@ get_id_list (
if (round == 2) {
/* Got more items than expected, go back to first round */
if (count >= total_count) {
- free(retval);
+ xfree(retval);
round = 1;
} else
retval[count] = id;
@@ -5201,14 +5201,14 @@ get_id_list (
*arg = p;
if (failed || retval == NULL) {
- free(retval);
+ xfree(retval);
return FAIL;
}
if (*list == NULL)
*list = retval;
else
- free(retval); /* list already found, don't overwrite it */
+ xfree(retval); /* list already found, don't overwrite it */
return OK;
}
@@ -5387,7 +5387,7 @@ void ex_syntax(exarg_T *eap)
break;
}
}
- free(subcmd_name);
+ xfree(subcmd_name);
if (eap->skip)
--emsg_skip;
}
@@ -5427,7 +5427,7 @@ void ex_ownsyntax(exarg_T *eap)
do_unlet((char_u *)"b:current_syntax", TRUE);
else {
set_internal_string_var((char_u *)"b:current_syntax", old_value);
- free(old_value);
+ xfree(old_value);
}
}
@@ -5862,7 +5862,7 @@ init_highlight (
// p invalid, so copy it.
char_u *copy_p = vim_strsave(p);
bool okay = load_colors(copy_p);
- free(copy_p);
+ xfree(copy_p);
if (okay) {
return;
}
@@ -5943,7 +5943,7 @@ int load_colors(char_u *name)
buf = xmalloc(STRLEN(name) + 12);
sprintf((char *)buf, "colors/%s.vim", name);
retval = source_runtime(buf, FALSE);
- free(buf);
+ xfree(buf);
apply_autocmds(EVENT_COLORSCHEME, name, curbuf->b_fname, FALSE, curbuf);
recursive = FALSE;
@@ -6145,7 +6145,7 @@ do_highlight (
*/
while (*linep && !vim_iswhite(*linep) && *linep != '=')
++linep;
- free(key);
+ xfree(key);
key = vim_strnsave_up(key_start, (int)(linep - key_start));
linep = skipwhite(linep);
@@ -6189,7 +6189,7 @@ do_highlight (
error = TRUE;
break;
}
- free(arg);
+ xfree(arg);
arg = vim_strnsave(arg_start, (int)(linep - arg_start));
if (*linep == '\'')
@@ -6394,7 +6394,7 @@ do_highlight (
if (!init)
HL_TABLE()[idx].sg_set |= SG_GUI;
- free(HL_TABLE()[idx].sg_rgb_fg_name);
+ xfree(HL_TABLE()[idx].sg_rgb_fg_name);
if (STRCMP(arg, "NONE")) {
HL_TABLE()[idx].sg_rgb_fg_name = (uint8_t *)xstrdup((char *)arg);
HL_TABLE()[idx].sg_rgb_fg = name_to_color(arg);
@@ -6412,7 +6412,7 @@ do_highlight (
if (!init)
HL_TABLE()[idx].sg_set |= SG_GUI;
- free(HL_TABLE()[idx].sg_rgb_bg_name);
+ xfree(HL_TABLE()[idx].sg_rgb_bg_name);
if (STRCMP(arg, "NONE") != 0) {
HL_TABLE()[idx].sg_rgb_bg_name = (uint8_t *)xstrdup((char *)arg);
HL_TABLE()[idx].sg_rgb_bg = name_to_color(arg);
@@ -6462,8 +6462,8 @@ do_highlight (
HL_TABLE()[idx].sg_scriptID = current_SID;
redraw_all_later(NOT_VALID);
}
- free(key);
- free(arg);
+ xfree(key);
+ xfree(arg);
/* Only call highlight_changed() once, after sourcing a syntax file */
need_highlight_changed = TRUE;
@@ -6474,8 +6474,8 @@ void free_highlight(void)
{
for (int i = 0; i < highlight_ga.ga_len; ++i) {
highlight_clear(i);
- free(HL_TABLE()[i].sg_name);
- free(HL_TABLE()[i].sg_name_u);
+ xfree(HL_TABLE()[i].sg_name);
+ xfree(HL_TABLE()[i].sg_name_u);
}
ga_clear(&highlight_ga);
}
@@ -6522,9 +6522,9 @@ static void highlight_clear(int idx)
HL_TABLE()[idx].sg_gui = 0;
HL_TABLE()[idx].sg_rgb_fg = -1;
HL_TABLE()[idx].sg_rgb_bg = -1;
- free(HL_TABLE()[idx].sg_rgb_fg_name);
+ xfree(HL_TABLE()[idx].sg_rgb_fg_name);
HL_TABLE()[idx].sg_rgb_fg_name = NULL;
- free(HL_TABLE()[idx].sg_rgb_bg_name);
+ xfree(HL_TABLE()[idx].sg_rgb_bg_name);
HL_TABLE()[idx].sg_rgb_bg_name = NULL;
/* Clear the script ID only when there is no link, since that is not
* cleared. */
@@ -6959,7 +6959,7 @@ int syn_namen2id(char_u *linep, int len)
{
char_u *name = vim_strnsave(linep, len);
int id = syn_name2id(name);
- free(name);
+ xfree(name);
return id;
}
@@ -6981,7 +6981,7 @@ int syn_check_group(char_u *pp, int len)
if (id == 0) /* doesn't exist yet */
id = syn_add_group(name);
else
- free(name);
+ xfree(name);
return id;
}
@@ -6998,7 +6998,7 @@ static int syn_add_group(char_u *name)
for (p = name; *p != NUL; ++p) {
if (!vim_isprintc(*p)) {
EMSG(_("E669: Unprintable character in group name"));
- free(name);
+ xfree(name);
return 0;
} else if (!ASCII_ISALNUM(*p) && *p != '_') {
/* This is an error, but since there previously was no check only
@@ -7019,7 +7019,7 @@ static int syn_add_group(char_u *name)
if (highlight_ga.ga_len >= MAX_HL_ID) {
EMSG(_("E849: Too many highlight and syntax groups"));
- free(name);
+ xfree(name);
return 0;
}
@@ -7039,8 +7039,8 @@ static int syn_add_group(char_u *name)
static void syn_unadd_group(void)
{
--highlight_ga.ga_len;
- free(HL_TABLE()[highlight_ga.ga_len].sg_name);
- free(HL_TABLE()[highlight_ga.ga_len].sg_name_u);
+ xfree(HL_TABLE()[highlight_ga.ga_len].sg_name);
+ xfree(HL_TABLE()[highlight_ga.ga_len].sg_name_u);
}
/*