1
0
forked from aniani/vim

patch 8.1.0615: get_tv function names are not consistent

Problem:    Get_tv function names are not consistent.
Solution:   Rename to tv_get.
This commit is contained in:
Bram Moolenaar 2018-12-21 16:04:21 +01:00
parent 162b71479b
commit d155d7a851
20 changed files with 637 additions and 633 deletions

View File

@ -938,7 +938,7 @@ channel_open_func(typval_T *argvars)
jobopt_T opt;
channel_T *channel = NULL;
address = get_tv_string(&argvars[0]);
address = tv_get_string(&argvars[0]);
if (argvars[1].v_type != VAR_UNKNOWN
&& (argvars[1].v_type != VAR_DICT || argvars[1].vval.v_dict == NULL))
{
@ -4003,7 +4003,7 @@ ch_raw_common(typval_T *argvars, typval_T *rettv, int eval)
rettv->v_type = VAR_STRING;
rettv->vval.v_string = NULL;
text = get_tv_string_buf(&argvars[1], buf);
text = tv_get_string_buf(&argvars[1], buf);
channel = send_common(argvars, text, 0, eval, &opt,
eval ? "ch_evalraw" : "ch_sendraw", &part_read);
if (channel != NULL && eval)
@ -4402,7 +4402,7 @@ channel_get_timeout(channel_T *channel, ch_part_T part)
static int
handle_mode(typval_T *item, jobopt_T *opt, ch_mode_T *modep, int jo)
{
char_u *val = get_tv_string(item);
char_u *val = tv_get_string(item);
opt->jo_set |= jo;
if (STRCMP(val, "nl") == 0)
@ -4424,7 +4424,7 @@ handle_mode(typval_T *item, jobopt_T *opt, ch_mode_T *modep, int jo)
static int
handle_io(typval_T *item, ch_part_T part, jobopt_T *opt)
{
char_u *val = get_tv_string(item);
char_u *val = tv_get_string(item);
opt->jo_set |= JO_OUT_IO << (part - PART_OUT);
if (STRCMP(val, "null") == 0)
@ -4561,7 +4561,7 @@ get_job_options(typval_T *tv, jobopt_T *opt, int supported, int supported2)
{
if (!(supported & JO_MODE))
break;
opt->jo_noblock = get_tv_number(item);
opt->jo_noblock = tv_get_number(item);
}
else if (STRCMP(hi->hi_key, "in_io") == 0
|| STRCMP(hi->hi_key, "out_io") == 0
@ -4582,13 +4582,13 @@ get_job_options(typval_T *tv, jobopt_T *opt, int supported, int supported2)
break;
opt->jo_set |= JO_OUT_NAME << (part - PART_OUT);
opt->jo_io_name[part] =
get_tv_string_buf_chk(item, opt->jo_io_name_buf[part]);
tv_get_string_buf_chk(item, opt->jo_io_name_buf[part]);
}
else if (STRCMP(hi->hi_key, "pty") == 0)
{
if (!(supported & JO_MODE))
break;
opt->jo_pty = get_tv_number(item);
opt->jo_pty = tv_get_number(item);
}
else if (STRCMP(hi->hi_key, "in_buf") == 0
|| STRCMP(hi->hi_key, "out_buf") == 0
@ -4599,10 +4599,10 @@ get_job_options(typval_T *tv, jobopt_T *opt, int supported, int supported2)
if (!(supported & JO_OUT_IO))
break;
opt->jo_set |= JO_OUT_BUF << (part - PART_OUT);
opt->jo_io_buf[part] = get_tv_number(item);
opt->jo_io_buf[part] = tv_get_number(item);
if (opt->jo_io_buf[part] <= 0)
{
EMSG3(_(e_invargNval), hi->hi_key, get_tv_string(item));
EMSG3(_(e_invargNval), hi->hi_key, tv_get_string(item));
return FAIL;
}
if (buflist_findnr(opt->jo_io_buf[part]) == NULL)
@ -4619,7 +4619,7 @@ get_job_options(typval_T *tv, jobopt_T *opt, int supported, int supported2)
if (!(supported & JO_OUT_IO))
break;
opt->jo_set |= JO_OUT_MODIFIABLE << (part - PART_OUT);
opt->jo_modifiable[part] = get_tv_number(item);
opt->jo_modifiable[part] = tv_get_number(item);
}
else if (STRCMP(hi->hi_key, "out_msg") == 0
|| STRCMP(hi->hi_key, "err_msg") == 0)
@ -4629,7 +4629,7 @@ get_job_options(typval_T *tv, jobopt_T *opt, int supported, int supported2)
if (!(supported & JO_OUT_IO))
break;
opt->jo_set2 |= JO2_OUT_MSG << (part - PART_OUT);
opt->jo_message[part] = get_tv_number(item);
opt->jo_message[part] = tv_get_number(item);
}
else if (STRCMP(hi->hi_key, "in_top") == 0
|| STRCMP(hi->hi_key, "in_bot") == 0)
@ -4648,10 +4648,10 @@ get_job_options(typval_T *tv, jobopt_T *opt, int supported, int supported2)
lp = &opt->jo_in_bot;
opt->jo_set |= JO_IN_BOT;
}
*lp = get_tv_number(item);
*lp = tv_get_number(item);
if (*lp < 0)
{
EMSG3(_(e_invargNval), hi->hi_key, get_tv_string(item));
EMSG3(_(e_invargNval), hi->hi_key, tv_get_string(item));
return FAIL;
}
}
@ -4718,7 +4718,7 @@ get_job_options(typval_T *tv, jobopt_T *opt, int supported, int supported2)
else if (STRCMP(hi->hi_key, "drop") == 0)
{
int never = FALSE;
val = get_tv_string(item);
val = tv_get_string(item);
if (STRCMP(val, "never") == 0)
never = TRUE;
@ -4747,7 +4747,7 @@ get_job_options(typval_T *tv, jobopt_T *opt, int supported, int supported2)
if (!(supported2 & JO2_TERM_NAME))
break;
opt->jo_set2 |= JO2_TERM_NAME;
opt->jo_term_name = get_tv_string_chk(item);
opt->jo_term_name = tv_get_string_chk(item);
if (opt->jo_term_name == NULL)
{
EMSG2(_(e_invargval), "term_name");
@ -4758,7 +4758,7 @@ get_job_options(typval_T *tv, jobopt_T *opt, int supported, int supported2)
{
if (!(supported2 & JO2_TERM_FINISH))
break;
val = get_tv_string(item);
val = tv_get_string(item);
if (STRCMP(val, "open") != 0 && STRCMP(val, "close") != 0)
{
EMSG3(_(e_invargNval), "term_finish", val);
@ -4774,7 +4774,7 @@ get_job_options(typval_T *tv, jobopt_T *opt, int supported, int supported2)
if (!(supported2 & JO2_TERM_OPENCMD))
break;
opt->jo_set2 |= JO2_TERM_OPENCMD;
p = opt->jo_term_opencmd = get_tv_string_chk(item);
p = opt->jo_term_opencmd = tv_get_string_chk(item);
if (p != NULL)
{
/* Must have %d and no other %. */
@ -4796,7 +4796,7 @@ get_job_options(typval_T *tv, jobopt_T *opt, int supported, int supported2)
if (!(supported2 & JO2_EOF_CHARS))
break;
opt->jo_set2 |= JO2_EOF_CHARS;
p = opt->jo_eof_chars = get_tv_string_chk(item);
p = opt->jo_eof_chars = tv_get_string_chk(item);
if (p == NULL)
{
EMSG2(_(e_invargval), "eof_chars");
@ -4808,54 +4808,54 @@ get_job_options(typval_T *tv, jobopt_T *opt, int supported, int supported2)
if (!(supported2 & JO2_TERM_ROWS))
break;
opt->jo_set2 |= JO2_TERM_ROWS;
opt->jo_term_rows = get_tv_number(item);
opt->jo_term_rows = tv_get_number(item);
}
else if (STRCMP(hi->hi_key, "term_cols") == 0)
{
if (!(supported2 & JO2_TERM_COLS))
break;
opt->jo_set2 |= JO2_TERM_COLS;
opt->jo_term_cols = get_tv_number(item);
opt->jo_term_cols = tv_get_number(item);
}
else if (STRCMP(hi->hi_key, "vertical") == 0)
{
if (!(supported2 & JO2_VERTICAL))
break;
opt->jo_set2 |= JO2_VERTICAL;
opt->jo_vertical = get_tv_number(item);
opt->jo_vertical = tv_get_number(item);
}
else if (STRCMP(hi->hi_key, "curwin") == 0)
{
if (!(supported2 & JO2_CURWIN))
break;
opt->jo_set2 |= JO2_CURWIN;
opt->jo_curwin = get_tv_number(item);
opt->jo_curwin = tv_get_number(item);
}
else if (STRCMP(hi->hi_key, "hidden") == 0)
{
if (!(supported2 & JO2_HIDDEN))
break;
opt->jo_set2 |= JO2_HIDDEN;
opt->jo_hidden = get_tv_number(item);
opt->jo_hidden = tv_get_number(item);
}
else if (STRCMP(hi->hi_key, "norestore") == 0)
{
if (!(supported2 & JO2_NORESTORE))
break;
opt->jo_set2 |= JO2_NORESTORE;
opt->jo_term_norestore = get_tv_number(item);
opt->jo_term_norestore = tv_get_number(item);
}
else if (STRCMP(hi->hi_key, "term_kill") == 0)
{
if (!(supported2 & JO2_TERM_KILL))
break;
opt->jo_set2 |= JO2_TERM_KILL;
opt->jo_term_kill = get_tv_string_chk(item);
opt->jo_term_kill = tv_get_string_chk(item);
}
# if defined(FEAT_GUI) || defined(FEAT_TERMGUICOLORS)
else if (STRCMP(hi->hi_key, "ansi_colors") == 0)
{
int n = 0;
int n = 0;
listitem_T *li;
long_u rgb[16];
@ -4873,9 +4873,9 @@ get_job_options(typval_T *tv, jobopt_T *opt, int supported, int supported2)
for (; li != NULL && n < 16; li = li->li_next, n++)
{
char_u *color_name;
guicolor_T guicolor;
guicolor_T guicolor;
color_name = get_tv_string_chk(&li->li_tv);
color_name = tv_get_string_chk(&li->li_tv);
if (color_name == NULL)
return FAIL;
@ -4915,7 +4915,7 @@ get_job_options(typval_T *tv, jobopt_T *opt, int supported, int supported2)
{
if (!(supported2 & JO2_CWD))
break;
opt->jo_cwd = get_tv_string_buf_chk(item, opt->jo_cwd_buf);
opt->jo_cwd = tv_get_string_buf_chk(item, opt->jo_cwd_buf);
if (opt->jo_cwd == NULL || !mch_isdir(opt->jo_cwd)
#ifndef WIN32 // Win32 directories don't have the concept of "executable"
|| mch_access((char *)opt->jo_cwd, X_OK) != 0
@ -4932,35 +4932,35 @@ get_job_options(typval_T *tv, jobopt_T *opt, int supported, int supported2)
if (!(supported & JO_WAITTIME))
break;
opt->jo_set |= JO_WAITTIME;
opt->jo_waittime = get_tv_number(item);
opt->jo_waittime = tv_get_number(item);
}
else if (STRCMP(hi->hi_key, "timeout") == 0)
{
if (!(supported & JO_TIMEOUT))
break;
opt->jo_set |= JO_TIMEOUT;
opt->jo_timeout = get_tv_number(item);
opt->jo_timeout = tv_get_number(item);
}
else if (STRCMP(hi->hi_key, "out_timeout") == 0)
{
if (!(supported & JO_OUT_TIMEOUT))
break;
opt->jo_set |= JO_OUT_TIMEOUT;
opt->jo_out_timeout = get_tv_number(item);
opt->jo_out_timeout = tv_get_number(item);
}
else if (STRCMP(hi->hi_key, "err_timeout") == 0)
{
if (!(supported & JO_ERR_TIMEOUT))
break;
opt->jo_set |= JO_ERR_TIMEOUT;
opt->jo_err_timeout = get_tv_number(item);
opt->jo_err_timeout = tv_get_number(item);
}
else if (STRCMP(hi->hi_key, "part") == 0)
{
if (!(supported & JO_PART))
break;
opt->jo_set |= JO_PART;
val = get_tv_string(item);
val = tv_get_string(item);
if (STRCMP(val, "err") == 0)
opt->jo_part = PART_ERR;
else if (STRCMP(val, "out") == 0)
@ -4976,14 +4976,14 @@ get_job_options(typval_T *tv, jobopt_T *opt, int supported, int supported2)
if (!(supported & JO_ID))
break;
opt->jo_set |= JO_ID;
opt->jo_id = get_tv_number(item);
opt->jo_id = tv_get_number(item);
}
else if (STRCMP(hi->hi_key, "stoponexit") == 0)
{
if (!(supported & JO_STOPONEXIT))
break;
opt->jo_set |= JO_STOPONEXIT;
opt->jo_stoponexit = get_tv_string_buf_chk(item,
opt->jo_stoponexit = tv_get_string_buf_chk(item,
opt->jo_soe_buf);
if (opt->jo_stoponexit == NULL)
{
@ -4996,7 +4996,7 @@ get_job_options(typval_T *tv, jobopt_T *opt, int supported, int supported2)
if (!(supported & JO_BLOCK_WRITE))
break;
opt->jo_set |= JO_BLOCK_WRITE;
opt->jo_block_write = get_tv_number(item);
opt->jo_block_write = tv_get_number(item);
}
else
break;
@ -5035,7 +5035,7 @@ get_channel_arg(typval_T *tv, int check_open, int reading, ch_part_T part)
}
else
{
EMSG2(_(e_invarg2), get_tv_string(tv));
EMSG2(_(e_invarg2), tv_get_string(tv));
return NULL;
}
if (channel != NULL && reading)
@ -5262,7 +5262,7 @@ win32_build_cmd(list_T *l, garray_T *gap)
for (li = l->lv_first; li != NULL; li = li->li_next)
{
s = get_tv_string_chk(&li->li_tv);
s = tv_get_string_chk(&li->li_tv);
if (s == NULL)
return FAIL;
s = win32_escape_arg(s);
@ -5832,7 +5832,7 @@ job_stop(job_T *job, typval_T *argvars, char *type)
arg = (char_u *)"";
else
{
arg = get_tv_string_chk(&argvars[1]);
arg = tv_get_string_chk(&argvars[1]);
if (arg == NULL)
{
EMSG(_(e_invarg));

View File

@ -495,7 +495,7 @@ dict_get_string(dict_T *d, char_u *key, int save)
di = dict_find(d, key, -1);
if (di == NULL)
return NULL;
s = get_tv_string(&di->di_tv);
s = tv_get_string(&di->di_tv);
if (save && s != NULL)
s = vim_strsave(s);
return s;
@ -513,7 +513,7 @@ dict_get_number(dict_T *d, char_u *key)
di = dict_find(d, key, -1);
if (di == NULL)
return 0;
return get_tv_number(&di->di_tv);
return tv_get_number(&di->di_tv);
}
/*
@ -630,10 +630,10 @@ dict_get_tv(char_u **arg, typval_T *rettv, int evaluate)
}
if (evaluate)
{
key = get_tv_string_buf_chk(&tvkey, buf);
key = tv_get_string_buf_chk(&tvkey, buf);
if (key == NULL)
{
/* "key" is NULL when get_tv_string_buf_chk() gave an errmsg */
/* "key" is NULL when tv_get_string_buf_chk() gave an errmsg */
clear_tv(&tvkey);
goto failret;
}

View File

@ -4363,7 +4363,7 @@ ins_compl_add_tv(typval_T *tv, int dir)
}
else
{
word = get_tv_string_chk(tv);
word = tv_get_string_chk(tv);
vim_memset(cptext, 0, sizeof(cptext));
}
if (word == NULL || (!aempty && *word == NUL))

View File

@ -681,7 +681,7 @@ eval_to_bool(
*error = FALSE;
if (!skip)
{
retval = (get_tv_number_chk(&tv, error) != 0);
retval = (tv_get_number_chk(&tv, error) != 0);
clear_tv(&tv);
}
}
@ -720,7 +720,7 @@ eval_expr_typval(typval_T *expr, typval_T *argv, int argc, typval_T *rettv)
}
else
{
s = get_tv_string_buf_chk(expr, buf);
s = tv_get_string_buf_chk(expr, buf);
if (s == NULL)
return FAIL;
s = skipwhite(s);
@ -751,7 +751,7 @@ eval_expr_to_bool(typval_T *expr, int *error)
*error = TRUE;
return FALSE;
}
res = (get_tv_number_chk(&rettv, error) != 0);
res = (tv_get_number_chk(&rettv, error) != 0);
clear_tv(&rettv);
return res;
}
@ -776,7 +776,7 @@ eval_to_string_skip(
retval = NULL;
else
{
retval = vim_strsave(get_tv_string(&tv));
retval = vim_strsave(tv_get_string(&tv));
clear_tv(&tv);
}
if (skip)
@ -841,7 +841,7 @@ eval_to_string(
}
#endif
else
retval = vim_strsave(get_tv_string(&tv));
retval = vim_strsave(tv_get_string(&tv));
clear_tv(&tv);
}
@ -891,7 +891,7 @@ eval_to_number(char_u *expr)
retval = -1;
else
{
retval = get_tv_number_chk(&rettv, NULL);
retval = tv_get_number_chk(&rettv, NULL);
clear_tv(&rettv);
}
--emsg_off;
@ -982,12 +982,12 @@ get_spellword(list_T *list, char_u **pp)
li = list->lv_first;
if (li == NULL)
return -1;
*pp = get_tv_string(&li->li_tv);
*pp = tv_get_string(&li->li_tv);
li = li->li_next;
if (li == NULL)
return -1;
return (int)get_tv_number(&li->li_tv);
return (int)tv_get_number(&li->li_tv);
}
#endif
@ -1053,7 +1053,7 @@ call_func_retnr(
if (call_vim_function(func, argc, argv, &rettv) == FAIL)
return -1;
retval = get_tv_number_chk(&rettv, NULL);
retval = tv_get_number_chk(&rettv, NULL);
clear_tv(&rettv);
return retval;
}
@ -1080,7 +1080,7 @@ call_func_retstr(
if (call_vim_function(func, argc, argv, &rettv) == FAIL)
return NULL;
retval = vim_strsave(get_tv_string(&rettv));
retval = vim_strsave(tv_get_string(&rettv));
clear_tv(&rettv);
return retval;
}
@ -1654,7 +1654,7 @@ ex_let_one(
{
c1 = name[len];
name[len] = NUL;
p = get_tv_string_chk(tv);
p = tv_get_string_chk(tv);
if (p != NULL && op != NULL && *op == '.')
{
int mustfree = FALSE;
@ -1708,8 +1708,8 @@ ex_let_one(
c1 = *p;
*p = NUL;
n = (long)get_tv_number(tv);
s = get_tv_string_chk(tv); /* != NULL if number or string */
n = (long)tv_get_number(tv);
s = tv_get_string_chk(tv); /* != NULL if number or string */
if (s != NULL && op != NULL && *op != '=')
{
opt_type = get_option_value(arg, &numval,
@ -1763,7 +1763,7 @@ ex_let_one(
char_u *ptofree = NULL;
char_u *s;
p = get_tv_string_chk(tv);
p = tv_get_string_chk(tv);
if (p != NULL && op != NULL && *op == '.')
{
s = get_reg_contents(*arg == '@' ? '"' : *arg, GREG_EXPR_SRC);
@ -1956,7 +1956,7 @@ get_lval(
empty1 = FALSE;
if (eval1(&p, &var1, TRUE) == FAIL) /* recursive! */
return NULL;
if (get_tv_string_chk(&var1) == NULL)
if (tv_get_string_chk(&var1) == NULL)
{
/* not a number or string */
clear_tv(&var1);
@ -1993,7 +1993,7 @@ get_lval(
clear_tv(&var1);
return NULL;
}
if (get_tv_string_chk(&var2) == NULL)
if (tv_get_string_chk(&var2) == NULL)
{
/* not a number or string */
clear_tv(&var1);
@ -2024,7 +2024,7 @@ get_lval(
if (len == -1)
{
/* "[key]": get key from "var1" */
key = get_tv_string_chk(&var1); /* is number or string */
key = tv_get_string_chk(&var1); /* is number or string */
if (key == NULL)
{
clear_tv(&var1);
@ -2106,7 +2106,7 @@ get_lval(
lp->ll_n1 = 0;
else
/* is number or string */
lp->ll_n1 = (long)get_tv_number(&var1);
lp->ll_n1 = (long)tv_get_number(&var1);
clear_tv(&var1);
lp->ll_dict = NULL;
@ -2136,7 +2136,7 @@ get_lval(
*/
if (lp->ll_range && !lp->ll_empty2)
{
lp->ll_n2 = (long)get_tv_number(&var2);
lp->ll_n2 = (long)tv_get_number(&var2);
/* is number or string */
clear_tv(&var2);
if (lp->ll_n2 < 0)
@ -2367,7 +2367,7 @@ tv_op(typval_T *tv1, typval_T *tv2, char_u *op)
if (*op == '+' || *op == '-')
{
/* nr += nr or nr -= nr*/
n = get_tv_number(tv1);
n = tv_get_number(tv1);
#ifdef FEAT_FLOAT
if (tv2->v_type == VAR_FLOAT)
{
@ -2385,9 +2385,9 @@ tv_op(typval_T *tv1, typval_T *tv2, char_u *op)
#endif
{
if (*op == '+')
n += get_tv_number(tv2);
n += tv_get_number(tv2);
else
n -= get_tv_number(tv2);
n -= tv_get_number(tv2);
clear_tv(tv1);
tv1->v_type = VAR_NUMBER;
tv1->vval.v_number = n;
@ -2399,8 +2399,8 @@ tv_op(typval_T *tv1, typval_T *tv2, char_u *op)
break;
/* str .= str */
s = get_tv_string(tv1);
s = concat_str(s, get_tv_string_buf(tv2, numbuf));
s = tv_get_string(tv1);
s = concat_str(s, tv_get_string_buf(tv2, numbuf));
clear_tv(tv1);
tv1->v_type = VAR_STRING;
tv1->vval.v_string = s;
@ -2419,7 +2419,7 @@ tv_op(typval_T *tv1, typval_T *tv2, char_u *op)
if (tv2->v_type == VAR_FLOAT)
f = tv2->vval.v_float;
else
f = get_tv_number(tv2);
f = tv_get_number(tv2);
if (*op == '+')
tv1->vval.v_float += f;
else
@ -3271,7 +3271,7 @@ eval1(char_u **arg, typval_T *rettv, int evaluate)
{
int error = FALSE;
if (get_tv_number_chk(rettv, &error) != 0)
if (tv_get_number_chk(rettv, &error) != 0)
result = TRUE;
clear_tv(rettv);
if (error)
@ -3345,7 +3345,7 @@ eval2(char_u **arg, typval_T *rettv, int evaluate)
{
if (evaluate && first)
{
if (get_tv_number_chk(rettv, &error) != 0)
if (tv_get_number_chk(rettv, &error) != 0)
result = TRUE;
clear_tv(rettv);
if (error)
@ -3365,7 +3365,7 @@ eval2(char_u **arg, typval_T *rettv, int evaluate)
*/
if (evaluate && !result)
{
if (get_tv_number_chk(&var2, &error) != 0)
if (tv_get_number_chk(&var2, &error) != 0)
result = TRUE;
clear_tv(&var2);
if (error)
@ -3413,7 +3413,7 @@ eval3(char_u **arg, typval_T *rettv, int evaluate)
{
if (evaluate && first)
{
if (get_tv_number_chk(rettv, &error) == 0)
if (tv_get_number_chk(rettv, &error) == 0)
result = FALSE;
clear_tv(rettv);
if (error)
@ -3433,7 +3433,7 @@ eval3(char_u **arg, typval_T *rettv, int evaluate)
*/
if (evaluate && result)
{
if (get_tv_number_chk(&var2, &error) == 0)
if (tv_get_number_chk(&var2, &error) == 0)
result = FALSE;
clear_tv(&var2);
if (error)
@ -3622,7 +3622,7 @@ eval5(char_u **arg, typval_T *rettv, int evaluate)
* we know that the first operand needs to be a string or number
* without evaluating the 2nd operand. So check before to avoid
* side effects after an error. */
if (evaluate && get_tv_string_chk(rettv) == NULL)
if (evaluate && tv_get_string_chk(rettv) == NULL)
{
clear_tv(rettv);
return FAIL;
@ -3646,8 +3646,8 @@ eval5(char_u **arg, typval_T *rettv, int evaluate)
*/
if (op == '.')
{
s1 = get_tv_string_buf(rettv, buf1); /* already checked */
s2 = get_tv_string_buf_chk(&var2, buf2);
s1 = tv_get_string_buf(rettv, buf1); /* already checked */
s2 = tv_get_string_buf_chk(&var2, buf2);
if (s2 == NULL) /* type error ? */
{
clear_tv(rettv);
@ -3686,7 +3686,7 @@ eval5(char_u **arg, typval_T *rettv, int evaluate)
else
#endif
{
n1 = get_tv_number_chk(rettv, &error);
n1 = tv_get_number_chk(rettv, &error);
if (error)
{
/* This can only happen for "list + non-list". For
@ -3709,7 +3709,7 @@ eval5(char_u **arg, typval_T *rettv, int evaluate)
else
#endif
{
n2 = get_tv_number_chk(&var2, &error);
n2 = tv_get_number_chk(&var2, &error);
if (error)
{
clear_tv(rettv);
@ -3804,7 +3804,7 @@ eval6(
}
else
#endif
n1 = get_tv_number_chk(rettv, &error);
n1 = tv_get_number_chk(rettv, &error);
clear_tv(rettv);
if (error)
return FAIL;
@ -3835,7 +3835,7 @@ eval6(
else
#endif
{
n2 = get_tv_number_chk(&var2, &error);
n2 = tv_get_number_chk(&var2, &error);
clear_tv(&var2);
if (error)
return FAIL;
@ -4200,7 +4200,7 @@ eval7(
f = rettv->vval.v_float;
else
#endif
val = get_tv_number_chk(rettv, &error);
val = tv_get_number_chk(rettv, &error);
if (error)
{
clear_tv(rettv);
@ -4326,7 +4326,7 @@ eval_index(
empty1 = TRUE;
else if (eval1(arg, &var1, evaluate) == FAIL) /* recursive! */
return FAIL;
else if (evaluate && get_tv_string_chk(&var1) == NULL)
else if (evaluate && tv_get_string_chk(&var1) == NULL)
{
/* not a number or string */
clear_tv(&var1);
@ -4348,7 +4348,7 @@ eval_index(
clear_tv(&var1);
return FAIL;
}
else if (evaluate && get_tv_string_chk(&var2) == NULL)
else if (evaluate && tv_get_string_chk(&var2) == NULL)
{
/* not a number or string */
if (!empty1)
@ -4376,7 +4376,7 @@ eval_index(
n1 = 0;
if (!empty1 && rettv->v_type != VAR_DICT)
{
n1 = get_tv_number(&var1);
n1 = tv_get_number(&var1);
clear_tv(&var1);
}
if (range)
@ -4385,7 +4385,7 @@ eval_index(
n2 = -1;
else
{
n2 = get_tv_number(&var2);
n2 = tv_get_number(&var2);
clear_tv(&var2);
}
}
@ -4403,7 +4403,7 @@ eval_index(
case VAR_NUMBER:
case VAR_STRING:
s = get_tv_string(rettv);
s = tv_get_string(rettv);
len = (long)STRLEN(s);
if (range)
{
@ -4504,7 +4504,7 @@ eval_index(
if (len == -1)
{
key = get_tv_string_chk(&var1);
key = tv_get_string_chk(&var1);
if (key == NULL)
{
clear_tv(&var1);
@ -4974,8 +4974,8 @@ tv_equal(
return tv1->vval.v_number == tv2->vval.v_number;
case VAR_STRING:
s1 = get_tv_string_buf(tv1, buf1);
s2 = get_tv_string_buf(tv2, buf2);
s1 = tv_get_string_buf(tv1, buf1);
s2 = tv_get_string_buf(tv2, buf2);
return ((ic ? MB_STRICMP(s1, s2) : STRCMP(s1, s2)) == 0);
case VAR_SPECIAL:
@ -5652,13 +5652,13 @@ echo_string_core(
case VAR_NUMBER:
case VAR_UNKNOWN:
*tofree = NULL;
r = get_tv_string_buf(tv, numbuf);
r = tv_get_string_buf(tv, numbuf);
break;
case VAR_JOB:
case VAR_CHANNEL:
*tofree = NULL;
r = get_tv_string_buf(tv, numbuf);
r = tv_get_string_buf(tv, numbuf);
if (composite_val)
{
*tofree = string_quote(r, FALSE);
@ -5913,7 +5913,7 @@ var2fpos(
return &pos;
}
name = get_tv_string_chk(varp);
name = tv_get_string_chk(varp);
if (name == NULL)
return NULL;
if (name[0] == '.') /* cursor */
@ -6363,7 +6363,7 @@ get_vim_var_nr(int idx)
char_u *
get_vim_var_str(int idx)
{
return get_tv_string(&vimvars[idx].vv_tv);
return tv_get_string(&vimvars[idx].vv_tv);
}
/*
@ -6936,20 +6936,20 @@ init_tv(typval_T *varp)
* Get the number value of a variable.
* If it is a String variable, uses vim_str2nr().
* For incompatible types, return 0.
* get_tv_number_chk() is similar to get_tv_number(), but informs the
* tv_get_number_chk() is similar to tv_get_number(), but informs the
* caller of incompatible types: it sets *denote to TRUE if "denote"
* is not NULL or returns -1 otherwise.
*/
varnumber_T
get_tv_number(typval_T *varp)
tv_get_number(typval_T *varp)
{
int error = FALSE;
return get_tv_number_chk(varp, &error); /* return 0L on error */
return tv_get_number_chk(varp, &error); /* return 0L on error */
}
varnumber_T
get_tv_number_chk(typval_T *varp, int *denote)
tv_get_number_chk(typval_T *varp, int *denote)
{
varnumber_T n = 0L;
@ -6991,7 +6991,7 @@ get_tv_number_chk(typval_T *varp, int *denote)
break;
#endif
case VAR_UNKNOWN:
internal_error("get_tv_number(UNKNOWN)");
internal_error("tv_get_number(UNKNOWN)");
break;
}
if (denote == NULL) /* useful for values that must be unsigned */
@ -7003,7 +7003,7 @@ get_tv_number_chk(typval_T *varp, int *denote)
#ifdef FEAT_FLOAT
float_T
get_tv_float(typval_T *varp)
tv_get_float(typval_T *varp)
{
switch (varp->v_type)
{
@ -7038,7 +7038,7 @@ get_tv_float(typval_T *varp)
break;
# endif
case VAR_UNKNOWN:
internal_error("get_tv_float(UNKNOWN)");
internal_error("tv_get_float(UNKNOWN)");
break;
}
return 0;
@ -7048,25 +7048,25 @@ get_tv_float(typval_T *varp)
/*
* Get the string value of a variable.
* If it is a Number variable, the number is converted into a string.
* get_tv_string() uses a single, static buffer. YOU CAN ONLY USE IT ONCE!
* get_tv_string_buf() uses a given buffer.
* tv_get_string() uses a single, static buffer. YOU CAN ONLY USE IT ONCE!
* tv_get_string_buf() uses a given buffer.
* If the String variable has never been set, return an empty string.
* Never returns NULL;
* get_tv_string_chk() and get_tv_string_buf_chk() are similar, but return
* tv_get_string_chk() and tv_get_string_buf_chk() are similar, but return
* NULL on error.
*/
char_u *
get_tv_string(typval_T *varp)
tv_get_string(typval_T *varp)
{
static char_u mybuf[NUMBUFLEN];
return get_tv_string_buf(varp, mybuf);
return tv_get_string_buf(varp, mybuf);
}
char_u *
get_tv_string_buf(typval_T *varp, char_u *buf)
tv_get_string_buf(typval_T *varp, char_u *buf)
{
char_u *res = get_tv_string_buf_chk(varp, buf);
char_u *res = tv_get_string_buf_chk(varp, buf);
return res != NULL ? res : (char_u *)"";
}
@ -7075,15 +7075,15 @@ get_tv_string_buf(typval_T *varp, char_u *buf)
* Careful: This uses a single, static buffer. YOU CAN ONLY USE IT ONCE!
*/
char_u *
get_tv_string_chk(typval_T *varp)
tv_get_string_chk(typval_T *varp)
{
static char_u mybuf[NUMBUFLEN];
return get_tv_string_buf_chk(varp, mybuf);
return tv_get_string_buf_chk(varp, mybuf);
}
char_u *
get_tv_string_buf_chk(typval_T *varp, char_u *buf)
tv_get_string_buf_chk(typval_T *varp, char_u *buf)
{
switch (varp->v_type)
{
@ -7298,7 +7298,7 @@ find_var_ht(char_u *name, char_u **varname)
/*
* Get the string value of a (global/local) variable.
* Note: see get_tv_string() for how long the pointer remains valid.
* Note: see tv_get_string() for how long the pointer remains valid.
* Returns NULL when it doesn't exist.
*/
char_u *
@ -7309,7 +7309,7 @@ get_var_value(char_u *name)
v = find_var(name, NULL, FALSE);
if (v == NULL)
return NULL;
return get_tv_string(&v->di_tv);
return tv_get_string(&v->di_tv);
}
/*
@ -7544,7 +7544,7 @@ set_var(
{
vim_free(v->di_tv.vval.v_string);
if (copy || tv->v_type != VAR_STRING)
v->di_tv.vval.v_string = vim_strsave(get_tv_string(tv));
v->di_tv.vval.v_string = vim_strsave(tv_get_string(tv));
else
{
/* Take over the string to avoid an extra alloc/free. */
@ -7555,7 +7555,7 @@ set_var(
}
else if (v->di_tv.v_type == VAR_NUMBER)
{
v->di_tv.vval.v_number = get_tv_number(tv);
v->di_tv.vval.v_number = tv_get_number(tv);
if (STRCMP(varname, "searchforward") == 0)
set_search_direction(v->di_tv.vval.v_number ? '/' : '?');
#ifdef FEAT_SEARCH_EXTRA
@ -7894,7 +7894,7 @@ get_user_input(
int inputdialog,
int secret)
{
char_u *prompt = get_tv_string_chk(&argvars[0]);
char_u *prompt = tv_get_string_chk(&argvars[0]);
char_u *p = NULL;
int c;
char_u buf[NUMBUFLEN];
@ -7937,7 +7937,7 @@ get_user_input(
if (argvars[1].v_type != VAR_UNKNOWN)
{
defstr = get_tv_string_buf_chk(&argvars[1], buf);
defstr = tv_get_string_buf_chk(&argvars[1], buf);
if (defstr != NULL)
stuffReadbuffSpec(defstr);
@ -7950,7 +7950,7 @@ get_user_input(
/* input() with a third argument: completion */
rettv->vval.v_string = NULL;
xp_name = get_tv_string_buf_chk(&argvars[2], buf);
xp_name = tv_get_string_buf_chk(&argvars[2], buf);
if (xp_name == NULL)
return;
@ -7975,7 +7975,7 @@ get_user_input(
if (inputdialog && rettv->vval.v_string == NULL
&& argvars[1].v_type != VAR_UNKNOWN
&& argvars[2].v_type != VAR_UNKNOWN)
rettv->vval.v_string = vim_strsave(get_tv_string_buf(
rettv->vval.v_string = vim_strsave(tv_get_string_buf(
&argvars[2], buf));
vim_free(xp_arg);
@ -8142,7 +8142,7 @@ ex_execute(exarg_T *eap)
if (!eap->skip)
{
p = get_tv_string(&rettv);
p = tv_get_string(&rettv);
len = (int)STRLEN(p);
if (ga_grow(&ga, len + 2) == FAIL)
{
@ -8205,7 +8205,7 @@ find_win_by_nr(
tabpage_T *tp) /* NULL for current tab page */
{
win_T *wp;
int nr = (int)get_tv_number_chk(vp, NULL);
int nr = (int)tv_get_number_chk(vp, NULL);
if (nr < 0)
return NULL;
@ -8234,7 +8234,7 @@ find_win_by_nr(
win_T *
find_win_by_nr_or_id(typval_T *vp)
{
int nr = (int)get_tv_number_chk(vp, NULL);
int nr = (int)tv_get_number_chk(vp, NULL);
if (nr >= LOWEST_WIN_ID)
return win_id2wp(vp);
@ -8257,7 +8257,7 @@ find_tabwin(
{
if (tvp->v_type != VAR_UNKNOWN)
{
n = (long)get_tv_number(tvp);
n = (long)tv_get_number(tvp);
if (n >= 0)
tp = find_tabpage(n);
}
@ -8292,11 +8292,11 @@ getwinvar(
int need_switch_win;
if (off == 1)
tp = find_tabpage((int)get_tv_number_chk(&argvars[0], NULL));
tp = find_tabpage((int)tv_get_number_chk(&argvars[0], NULL));
else
tp = curtab;
win = find_win_by_nr(&argvars[off], tp);
varname = get_tv_string_chk(&argvars[off + 1]);
varname = tv_get_string_chk(&argvars[off + 1]);
++emsg_off;
rettv->v_type = VAR_STRING;
@ -8373,11 +8373,11 @@ setwinvar(typval_T *argvars, typval_T *rettv UNUSED, int off)
return;
if (off == 1)
tp = find_tabpage((int)get_tv_number_chk(&argvars[0], NULL));
tp = find_tabpage((int)tv_get_number_chk(&argvars[0], NULL));
else
tp = curtab;
win = find_win_by_nr(&argvars[off], tp);
varname = get_tv_string_chk(&argvars[off + 1]);
varname = tv_get_string_chk(&argvars[off + 1]);
varp = &argvars[off + 2];
if (win != NULL && varname != NULL && varp != NULL)
@ -8393,8 +8393,8 @@ setwinvar(typval_T *argvars, typval_T *rettv UNUSED, int off)
int error = FALSE;
++varname;
numval = (long)get_tv_number_chk(varp, &error);
strval = get_tv_string_buf_chk(varp, nbuf);
numval = (long)tv_get_number_chk(varp, &error);
strval = tv_get_string_buf_chk(varp, nbuf);
if (!error && strval != NULL)
set_option_value(varname, numval, strval, OPT_LOCAL);
}
@ -8697,7 +8697,7 @@ store_session_globals(FILE *fd)
{
/* Escape special characters with a backslash. Turn a LF and
* CR into \n and \r. */
p = vim_strsave_escaped(get_tv_string(&this_var->di_tv),
p = vim_strsave_escaped(tv_get_string(&this_var->di_tv),
(char_u *)"\\\"\n\r");
if (p == NULL) /* out of memory */
break;
@ -8842,8 +8842,8 @@ assert_equalfile(typval_T *argvars)
{
char_u buf1[NUMBUFLEN];
char_u buf2[NUMBUFLEN];
char_u *fname1 = get_tv_string_buf_chk(&argvars[0], buf1);
char_u *fname2 = get_tv_string_buf_chk(&argvars[1], buf2);
char_u *fname1 = tv_get_string_buf_chk(&argvars[0], buf1);
char_u *fname2 = tv_get_string_buf_chk(&argvars[1], buf2);
garray_T ga;
FILE *fd1;
FILE *fd2;
@ -8914,8 +8914,8 @@ assert_match_common(typval_T *argvars, assert_type_T atype)
garray_T ga;
char_u buf1[NUMBUFLEN];
char_u buf2[NUMBUFLEN];
char_u *pat = get_tv_string_buf_chk(&argvars[0], buf1);
char_u *text = get_tv_string_buf_chk(&argvars[1], buf2);
char_u *pat = tv_get_string_buf_chk(&argvars[0], buf1);
char_u *text = tv_get_string_buf_chk(&argvars[1], buf2);
if (pat == NULL || text == NULL)
EMSG(_(e_invarg));
@ -8936,9 +8936,9 @@ assert_inrange(typval_T *argvars)
{
garray_T ga;
int error = FALSE;
varnumber_T lower = get_tv_number_chk(&argvars[0], &error);
varnumber_T upper = get_tv_number_chk(&argvars[1], &error);
varnumber_T actual = get_tv_number_chk(&argvars[2], &error);
varnumber_T lower = tv_get_number_chk(&argvars[0], &error);
varnumber_T upper = tv_get_number_chk(&argvars[1], &error);
varnumber_T actual = tv_get_number_chk(&argvars[2], &error);
char_u *tofree;
char msg[200];
char_u numbuf[NUMBUFLEN];
@ -8980,7 +8980,7 @@ assert_bool(typval_T *argvars, int isTrue)
&& argvars[0].vval.v_number == (isTrue ? VVAL_TRUE : VVAL_FALSE))
return 0;
if (argvars[0].v_type != VAR_NUMBER
|| (get_tv_number_chk(&argvars[0], &error) == 0) == isTrue
|| (tv_get_number_chk(&argvars[0], &error) == 0) == isTrue
|| error)
{
prepare_assert_error(&ga);
@ -9000,7 +9000,7 @@ assert_report(typval_T *argvars)
garray_T ga;
prepare_assert_error(&ga);
ga_concat(&ga, get_tv_string(&argvars[0]));
ga_concat(&ga, tv_get_string(&argvars[0]));
assert_error(&ga);
ga_clear(&ga);
return 1;
@ -9010,7 +9010,7 @@ assert_report(typval_T *argvars)
assert_exception(typval_T *argvars)
{
garray_T ga;
char_u *error = get_tv_string_chk(&argvars[0]);
char_u *error = tv_get_string_chk(&argvars[0]);
if (vimvars[VV_EXCEPTION].vv_str == NULL)
{
@ -9036,7 +9036,7 @@ assert_exception(typval_T *argvars)
int
assert_beeps(typval_T *argvars)
{
char_u *cmd = get_tv_string_chk(&argvars[0]);
char_u *cmd = tv_get_string_chk(&argvars[0]);
garray_T ga;
int ret = 0;
@ -9062,7 +9062,7 @@ assert_beeps(typval_T *argvars)
int
assert_fails(typval_T *argvars)
{
char_u *cmd = get_tv_string_chk(&argvars[0]);
char_u *cmd = tv_get_string_chk(&argvars[0]);
garray_T ga;
int ret = 0;
char_u numbuf[NUMBUFLEN];
@ -9091,7 +9091,7 @@ assert_fails(typval_T *argvars)
else if (argvars[1].v_type != VAR_UNKNOWN)
{
char_u buf[NUMBUFLEN];
char *error = (char *)get_tv_string_buf_chk(&argvars[1], buf);
char *error = (char *)tv_get_string_buf_chk(&argvars[1], buf);
if (error == NULL
|| strstr((char *)vimvars[VV_ERRMSG].vv_str, error) == NULL)
@ -9325,11 +9325,11 @@ typval_compare(
if (typ1->v_type == VAR_FLOAT)
f1 = typ1->vval.v_float;
else
f1 = get_tv_number(typ1);
f1 = tv_get_number(typ1);
if (typ2->v_type == VAR_FLOAT)
f2 = typ2->vval.v_float;
else
f2 = get_tv_number(typ2);
f2 = tv_get_number(typ2);
n1 = FALSE;
switch (type)
{
@ -9353,8 +9353,8 @@ typval_compare(
else if ((typ1->v_type == VAR_NUMBER || typ2->v_type == VAR_NUMBER)
&& type != TYPE_MATCH && type != TYPE_NOMATCH)
{
n1 = get_tv_number(typ1);
n2 = get_tv_number(typ2);
n1 = tv_get_number(typ1);
n2 = tv_get_number(typ2);
switch (type)
{
case TYPE_EQUAL: n1 = (n1 == n2); break;
@ -9370,8 +9370,8 @@ typval_compare(
}
else
{
s1 = get_tv_string_buf(typ1, buf1);
s2 = get_tv_string_buf(typ2, buf2);
s1 = tv_get_string_buf(typ1, buf1);
s2 = tv_get_string_buf(typ2, buf2);
if (type != TYPE_MATCH && type != TYPE_NOMATCH)
i = ic ? MB_STRICMP(s1, s2) : STRCMP(s1, s2);
else
@ -10220,10 +10220,10 @@ filter_map_one(typval_T *tv, typval_T *expr, int map, int *remp)
int error = FALSE;
/* filter(): when expr is zero remove the item */
*remp = (get_tv_number_chk(&rettv, &error) == 0);
*remp = (tv_get_number_chk(&rettv, &error) == 0);
clear_tv(&rettv);
/* On type error, nothing has been removed; return FAIL to stop the
* loop. The error message was given by get_tv_number_chk(). */
* loop. The error message was given by tv_get_number_chk(). */
if (error)
goto theend;
}

File diff suppressed because it is too large Load Diff

View File

@ -8913,7 +8913,7 @@ ex_oldfiles(exarg_T *eap UNUSED)
for (li = l->lv_first; li != NULL && !got_int; li = li->li_next)
{
++nr;
fname = get_tv_string(&li->li_tv);
fname = tv_get_string(&li->li_tv);
if (!message_filtered(fname))
{
msg_outnum((long)nr);

View File

@ -873,7 +873,7 @@ json_decode_item(js_read_T *reader, typval_T *res, int options)
if (top_item != NULL && top_item->jd_type == JSON_OBJECT_KEY
&& cur_item != NULL)
{
top_item->jd_key = get_tv_string_buf_chk(cur_item, key_buf);
top_item->jd_key = tv_get_string_buf_chk(cur_item, key_buf);
if (top_item->jd_key == NULL)
{
clear_tv(cur_item);

View File

@ -403,7 +403,7 @@ list_find_nr(
*errorp = TRUE;
return -1L;
}
return (long)get_tv_number_chk(&li->li_tv, errorp);
return (long)tv_get_number_chk(&li->li_tv, errorp);
}
/*
@ -420,7 +420,7 @@ list_find_str(list_T *l, long idx)
EMSGN(_(e_listidx), idx);
return NULL;
}
return get_tv_string(&li->li_tv);
return tv_get_string(&li->li_tv);
}
/*
@ -949,7 +949,7 @@ write_list(FILE *fd, list_T *list, int binary)
for (li = list->lv_first; li != NULL; li = li->li_next)
{
for (s = get_tv_string(&li->li_tv); *s != NUL; ++s)
for (s = tv_get_string(&li->li_tv); *s != NUL; ++s)
{
if (*s == '\n')
c = putc(NUL, fd);

View File

@ -4137,7 +4137,7 @@ tv_nr(typval_T *tvs, int *idxp)
else
{
++*idxp;
n = get_tv_number_chk(&tvs[idx], &err);
n = tv_get_number_chk(&tvs[idx], &err);
if (err)
n = 0;
}
@ -4146,7 +4146,7 @@ tv_nr(typval_T *tvs, int *idxp)
/*
* Get string argument from "idxp" entry in "tvs". First entry is 1.
* If "tofree" is NULL get_tv_string_chk() is used. Some types (e.g. List)
* If "tofree" is NULL tv_get_string_chk() is used. Some types (e.g. List)
* are not converted to a string.
* If "tofree" is not NULL echo_string() is used. All types are converted to
* a string with the same format as ":echo". The caller must free "*tofree".
@ -4167,7 +4167,7 @@ tv_str(typval_T *tvs, int *idxp, char_u **tofree)
if (tofree != NULL)
s = (char *)echo_string(&tvs[idx], tofree, numbuf, get_copyID());
else
s = (char *)get_tv_string_chk(&tvs[idx]);
s = (char *)tv_get_string_chk(&tvs[idx]);
}
return s;
}

View File

@ -6593,7 +6593,7 @@ build_argv_from_list(list_T *l, char ***argv, int *argc)
*argc = 0;
for (li = l->lv_first; li != NULL; li = li->li_next)
{
s = get_tv_string_chk(&li->li_tv);
s = tv_get_string_chk(&li->li_tv);
if (s == NULL)
{
int i;

View File

@ -1678,13 +1678,13 @@ x_IOerror_check(Display *dpy UNUSED)
/*
* An X IO Error handler, used to catch terminal errors.
*/
static int xterm_dpy_was_reset = FALSE;
static int xterm_dpy_retry_count = 0;
static int
x_IOerror_handler(Display *dpy UNUSED)
{
xterm_dpy = NULL;
xterm_dpy_was_reset = TRUE;
xterm_dpy_retry_count = 5; // Try reconnecting five times
x11_window = 0;
x11_display = NULL;
xterm_Shell = (Widget)0;
@ -1704,9 +1704,9 @@ x_IOerror_handler(Display *dpy UNUSED)
static void
may_restore_clipboard(void)
{
if (xterm_dpy_was_reset)
if (xterm_dpy_retry_count > 0)
{
xterm_dpy_was_reset = FALSE;
--xterm_dpy_retry_count;
# ifndef LESSTIF_VERSION
/* This has been reported to avoid Vim getting stuck. */
@ -5553,7 +5553,7 @@ mch_job_start(char **argv, job_T *job, jobopt_T *options, int is_terminal)
{
typval_T *item = &dict_lookup(hi)->di_tv;
vim_setenv((char_u*)hi->hi_key, get_tv_string(item));
vim_setenv((char_u*)hi->hi_key, tv_get_string(item));
--todo;
}
}
@ -7494,6 +7494,8 @@ setup_term_clip(void)
{
xterm_dpy = XtOpenDisplay(app_context, xterm_display,
"vim_xterm", "Vim_xterm", NULL, 0, &z, &strp);
if (xterm_dpy != NULL)
xterm_dpy_retry_count = 0;
#if defined(HAVE_SETJMP_H)
mch_endjmp();
#endif

View File

@ -5355,7 +5355,7 @@ win32_build_env(dict_T *env, garray_T *gap, int is_terminal)
{
typval_T *item = &dict_lookup(hi)->di_tv;
WCHAR *wkey = enc_to_utf16((char_u *)hi->hi_key, NULL);
WCHAR *wval = enc_to_utf16(get_tv_string(item), NULL);
WCHAR *wval = enc_to_utf16(tv_get_string(item), NULL);
--todo;
if (wkey != NULL && wval != NULL)
{

View File

@ -1103,7 +1103,7 @@ ui_post_balloon(char_u *mesg, list_T *list)
return;
for (idx = 0, li = list->lv_first; li != NULL; li = li->li_next, ++idx)
{
char_u *text = get_tv_string_chk(&li->li_tv);
char_u *text = tv_get_string_chk(&li->li_tv);
balloon_array[idx].pum_text = vim_strsave(
text == NULL ? (char_u *)"" : text);

View File

@ -82,13 +82,13 @@ typval_T *alloc_tv(void);
void free_tv(typval_T *varp);
void clear_tv(typval_T *varp);
void init_tv(typval_T *varp);
varnumber_T get_tv_number(typval_T *varp);
varnumber_T get_tv_number_chk(typval_T *varp, int *denote);
float_T get_tv_float(typval_T *varp);
char_u *get_tv_string(typval_T *varp);
char_u *get_tv_string_buf(typval_T *varp, char_u *buf);
char_u *get_tv_string_chk(typval_T *varp);
char_u *get_tv_string_buf_chk(typval_T *varp, char_u *buf);
varnumber_T tv_get_number(typval_T *varp);
varnumber_T tv_get_number_chk(typval_T *varp, int *denote);
float_T tv_get_float(typval_T *varp);
char_u *tv_get_string(typval_T *varp);
char_u *tv_get_string_buf(typval_T *varp, char_u *buf);
char_u *tv_get_string_chk(typval_T *varp);
char_u *tv_get_string_buf_chk(typval_T *varp, char_u *buf);
dictitem_T *find_var(char_u *name, hashtab_T **htp, int no_autoload);
dictitem_T *find_var_in_ht(hashtab_T *ht, int htname, char_u *varname, int no_autoload);
hashtab_T *find_var_ht(char_u *name, char_u **varname);

View File

@ -7566,7 +7566,7 @@ vim_regsub_both(
/* fill_submatch_list() was called */
clear_submatch_list(&matchList);
eval_result = get_tv_string_buf_chk(&rettv, buf);
eval_result = tv_get_string_buf_chk(&rettv, buf);
if (eval_result != NULL)
eval_result = vim_strsave(eval_result);
clear_tv(&rettv);

View File

@ -4212,7 +4212,7 @@ set_tagstack(win_T *wp, dict_T *d, int action)
}
if ((di = dict_find(d, (char_u *)"curidx", -1)) != NULL)
tagstack_set_curidx(wp, (int)get_tv_number(&di->di_tv) - 1);
tagstack_set_curidx(wp, (int)tv_get_number(&di->di_tv) - 1);
return OK;
}

View File

@ -496,7 +496,7 @@ term_start(
else if (argvar->v_type != VAR_LIST
|| argvar->vval.v_list == NULL
|| argvar->vval.v_list->lv_len < 1
|| (cmd = get_tv_string_chk(
|| (cmd = tv_get_string_chk(
&argvar->vval.v_list->lv_first->li_tv)) == NULL)
cmd = (char_u*)"";
@ -569,7 +569,7 @@ term_start(
for (item = argvar->vval.v_list->lv_first;
item != NULL; item = item->li_next)
{
char_u *s = get_tv_string_chk(&item->li_tv);
char_u *s = tv_get_string_chk(&item->li_tv);
char_u *p;
if (s == NULL)
@ -1913,7 +1913,7 @@ term_paste_register(int prev_c UNUSED)
type = get_reg_type(c, &reglen);
for (item = l->lv_first; item != NULL; item = item->li_next)
{
char_u *s = get_tv_string(&item->li_tv);
char_u *s = tv_get_string(&item->li_tv);
#ifdef WIN3264
char_u *tmp = s;
@ -3455,7 +3455,7 @@ set_ansi_colors_list(VTerm *vterm, list_T *list)
char_u *color_name;
guicolor_T guicolor;
color_name = get_tv_string_chk(&li->li_tv);
color_name = tv_get_string_chk(&li->li_tv);
if (color_name == NULL)
return FAIL;
@ -3497,7 +3497,7 @@ init_vterm_ansi_colors(VTerm *vterm)
static void
handle_drop_command(listitem_T *item)
{
char_u *fname = get_tv_string(&item->li_tv);
char_u *fname = tv_get_string(&item->li_tv);
listitem_T *opt_item = item->li_next;
int bufnr;
win_T *wp;
@ -3589,7 +3589,7 @@ handle_call_command(term_T *term, channel_T *channel, listitem_T *item)
ch_log(channel, "Missing function arguments for call");
return;
}
func = get_tv_string(&item->li_tv);
func = tv_get_string(&item->li_tv);
if (STRNCMP(func, "Tapi_", 5) != 0)
{
@ -3645,7 +3645,7 @@ parse_osc(const char *command, size_t cmdlen, void *user)
ch_log(channel, "Missing command");
else
{
char_u *cmd = get_tv_string(&item->li_tv);
char_u *cmd = tv_get_string(&item->li_tv);
/* Make sure an invoked command doesn't delete the buffer (and the
* terminal) under our fingers. */
@ -3826,7 +3826,7 @@ term_get_buf(typval_T *argvars, char *where)
{
buf_T *buf;
(void)get_tv_number(&argvars[0]); /* issue errmsg if type error */
(void)tv_get_number(&argvars[0]); /* issue errmsg if type error */
++emsg_off;
buf = get_buf_tv(&argvars[0], FALSE);
--emsg_off;
@ -3921,7 +3921,7 @@ f_term_dumpwrite(typval_T *argvars, typval_T *rettv UNUSED)
}
}
fname = get_tv_string_chk(&argvars[1]);
fname = tv_get_string_chk(&argvars[1]);
if (fname == NULL)
return;
if (mch_stat((char *)fname, &st) >= 0)
@ -4370,9 +4370,9 @@ term_load_dump(typval_T *argvars, typval_T *rettv, int do_diff)
char_u *textline = NULL;
/* First open the files. If this fails bail out. */
fname1 = get_tv_string_buf_chk(&argvars[0], buf1);
fname1 = tv_get_string_buf_chk(&argvars[0], buf1);
if (do_diff)
fname2 = get_tv_string_buf_chk(&argvars[1], buf2);
fname2 = tv_get_string_buf_chk(&argvars[1], buf2);
if (fname1 == NULL || (do_diff && fname2 == NULL))
{
EMSG(_(e_invarg));
@ -4740,8 +4740,8 @@ f_term_getattr(typval_T *argvars, typval_T *rettv)
{"reverse", HL_INVERSE},
};
attr = get_tv_number(&argvars[0]);
name = get_tv_string_chk(&argvars[1]);
attr = tv_get_number(&argvars[0]);
name = tv_get_string_chk(&argvars[1]);
if (name == NULL)
return;
@ -4811,7 +4811,7 @@ get_row_number(typval_T *tv, term_T *term)
&& tv->vval.v_string != NULL
&& STRCMP(tv->vval.v_string, ".") == 0)
return term->tl_cursor_pos.row;
return (int)get_tv_number(tv) - 1;
return (int)tv_get_number(tv) - 1;
}
/*
@ -4911,9 +4911,9 @@ f_term_setsize(typval_T *argvars UNUSED, typval_T *rettv UNUSED)
if (buf->b_term->tl_vterm == NULL)
return;
term = buf->b_term;
rows = get_tv_number(&argvars[1]);
rows = tv_get_number(&argvars[1]);
rows = rows <= 0 ? term->tl_rows : rows;
cols = get_tv_number(&argvars[2]);
cols = tv_get_number(&argvars[2]);
cols = cols <= 0 ? term->tl_cols : cols;
vterm_set_size(term->tl_vterm, rows, cols);
/* handle_resize() will resize the windows */
@ -4977,7 +4977,7 @@ f_term_gettty(typval_T *argvars, typval_T *rettv)
if (buf == NULL)
return;
if (argvars[1].v_type != VAR_UNKNOWN)
num = get_tv_number(&argvars[1]);
num = tv_get_number(&argvars[1]);
switch (num)
{
@ -4990,7 +4990,7 @@ f_term_gettty(typval_T *argvars, typval_T *rettv)
p = buf->b_term->tl_job->jv_tty_in;
break;
default:
EMSG2(_(e_invarg2), get_tv_string(&argvars[1]));
EMSG2(_(e_invarg2), tv_get_string(&argvars[1]));
return;
}
if (p != NULL)
@ -5139,7 +5139,7 @@ f_term_sendkeys(typval_T *argvars, typval_T *rettv)
if (buf == NULL)
return;
msg = get_tv_string_chk(&argvars[1]);
msg = tv_get_string_chk(&argvars[1]);
if (msg == NULL)
return;
term = buf->b_term;
@ -5241,7 +5241,7 @@ f_term_setrestore(typval_T *argvars UNUSED, typval_T *rettv UNUSED)
return;
term = buf->b_term;
vim_free(term->tl_command);
cmd = get_tv_string_chk(&argvars[1]);
cmd = tv_get_string_chk(&argvars[1]);
if (cmd != NULL)
term->tl_command = vim_strsave(cmd);
else
@ -5263,7 +5263,7 @@ f_term_setkill(typval_T *argvars UNUSED, typval_T *rettv UNUSED)
return;
term = buf->b_term;
vim_free(term->tl_kill);
how = get_tv_string_chk(&argvars[1]);
how = tv_get_string_chk(&argvars[1]);
if (how != NULL)
term->tl_kill = vim_strsave(how);
else
@ -5347,7 +5347,7 @@ f_term_wait(typval_T *argvars, typval_T *rettv UNUSED)
/* Wait for some time for any channel I/O. */
if (argvars[1].v_type != VAR_UNKNOWN)
wait = get_tv_number(&argvars[1]);
wait = tv_get_number(&argvars[1]);
ui_delay(wait, TRUE);
mch_check_messages();

View File

@ -154,8 +154,8 @@ f_prop_add(typval_T *argvars, typval_T *rettv UNUSED)
textprop_T tmp_prop;
int i;
lnum = get_tv_number(&argvars[0]);
col = get_tv_number(&argvars[1]);
lnum = tv_get_number(&argvars[0]);
col = tv_get_number(&argvars[1]);
if (col < 1)
{
EMSGN(_(e_invalid_col), (long)col);
@ -352,14 +352,14 @@ text_prop_type_by_id(buf_T *buf, int id)
void
f_prop_clear(typval_T *argvars, typval_T *rettv UNUSED)
{
linenr_T start = get_tv_number(&argvars[0]);
linenr_T start = tv_get_number(&argvars[0]);
linenr_T end = start;
linenr_T lnum;
buf_T *buf = curbuf;
if (argvars[1].v_type != VAR_UNKNOWN)
{
end = get_tv_number(&argvars[1]);
end = tv_get_number(&argvars[1]);
if (argvars[2].v_type != VAR_UNKNOWN)
{
if (get_bufnr_from_arg(&argvars[2], &buf) == FAIL)
@ -405,7 +405,7 @@ f_prop_clear(typval_T *argvars, typval_T *rettv UNUSED)
void
f_prop_list(typval_T *argvars, typval_T *rettv)
{
linenr_T lnum = get_tv_number(&argvars[0]);
linenr_T lnum = tv_get_number(&argvars[0]);
buf_T *buf = curbuf;
if (argvars[1].v_type != VAR_UNKNOWN)
@ -476,10 +476,10 @@ f_prop_remove(typval_T *argvars, typval_T *rettv)
if (argvars[1].v_type != VAR_UNKNOWN)
{
start = get_tv_number(&argvars[1]);
start = tv_get_number(&argvars[1]);
end = start;
if (argvars[2].v_type != VAR_UNKNOWN)
end = get_tv_number(&argvars[2]);
end = tv_get_number(&argvars[2]);
if (start < 1 || end < 1)
{
EMSG(_(e_invrange));
@ -586,7 +586,7 @@ prop_type_set(typval_T *argvars, int add)
dictitem_T *di;
proptype_T *prop;
name = get_tv_string(&argvars[0]);
name = tv_get_string(&argvars[0]);
if (*name == NUL)
{
EMSG(_(e_invarg));
@ -656,12 +656,12 @@ prop_type_set(typval_T *argvars, int add)
di = dict_find(dict, (char_u *)"priority", -1);
if (di != NULL)
prop->pt_priority = get_tv_number(&di->di_tv);
prop->pt_priority = tv_get_number(&di->di_tv);
di = dict_find(dict, (char_u *)"start_incl", -1);
if (di != NULL)
{
if (get_tv_number(&di->di_tv))
if (tv_get_number(&di->di_tv))
prop->pt_flags |= PT_FLAG_INS_START_INCL;
else
prop->pt_flags &= ~PT_FLAG_INS_START_INCL;
@ -670,7 +670,7 @@ prop_type_set(typval_T *argvars, int add)
di = dict_find(dict, (char_u *)"end_incl", -1);
if (di != NULL)
{
if (get_tv_number(&di->di_tv))
if (tv_get_number(&di->di_tv))
prop->pt_flags |= PT_FLAG_INS_END_INCL;
else
prop->pt_flags &= ~PT_FLAG_INS_END_INCL;
@ -706,7 +706,7 @@ f_prop_type_delete(typval_T *argvars, typval_T *rettv UNUSED)
buf_T *buf = NULL;
hashitem_T *hi;
name = get_tv_string(&argvars[0]);
name = tv_get_string(&argvars[0]);
if (*name == NUL)
{
EMSG(_(e_invarg));
@ -740,7 +740,7 @@ f_prop_type_delete(typval_T *argvars, typval_T *rettv UNUSED)
void
f_prop_type_get(typval_T *argvars, typval_T *rettv UNUSED)
{
char_u *name = get_tv_string(&argvars[0]);
char_u *name = tv_get_string(&argvars[0]);
if (*name == NUL)
{

View File

@ -799,6 +799,8 @@ static char *(features[]) =
static int included_patches[] =
{ /* Add new patch number below this line */
/**/
615,
/**/
614,
/**/

View File

@ -6867,7 +6867,7 @@ match_add(
subli = subl->lv_first;
if (subli == NULL)
goto fail;
lnum = get_tv_number_chk(&subli->li_tv, &error);
lnum = tv_get_number_chk(&subli->li_tv, &error);
if (error == TRUE)
goto fail;
if (lnum == 0)
@ -6879,13 +6879,13 @@ match_add(
subli = subli->li_next;
if (subli != NULL)
{
col = get_tv_number_chk(&subli->li_tv, &error);
col = tv_get_number_chk(&subli->li_tv, &error);
if (error == TRUE)
goto fail;
subli = subli->li_next;
if (subli != NULL)
{
len = get_tv_number_chk(&subli->li_tv, &error);
len = tv_get_number_chk(&subli->li_tv, &error);
if (error == TRUE)
goto fail;
}
@ -7132,7 +7132,7 @@ win_getid(typval_T *argvars)
if (argvars[0].v_type == VAR_UNKNOWN)
return curwin->w_id;
winnr = get_tv_number(&argvars[0]);
winnr = tv_get_number(&argvars[0]);
if (winnr > 0)
{
if (argvars[1].v_type == VAR_UNKNOWN)
@ -7140,7 +7140,7 @@ win_getid(typval_T *argvars)
else
{
tabpage_T *tp;
int tabnr = get_tv_number(&argvars[1]);
int tabnr = tv_get_number(&argvars[1]);
FOR_ALL_TABPAGES(tp)
if (--tabnr == 0)
@ -7164,7 +7164,7 @@ win_gotoid(typval_T *argvars)
{
win_T *wp;
tabpage_T *tp;
int id = get_tv_number(&argvars[0]);
int id = tv_get_number(&argvars[0]);
FOR_ALL_TAB_WINDOWS(tp, wp)
if (wp->w_id == id)
@ -7182,7 +7182,7 @@ win_id2tabwin(typval_T *argvars, list_T *list)
tabpage_T *tp;
int winnr = 1;
int tabnr = 1;
int id = get_tv_number(&argvars[0]);
int id = tv_get_number(&argvars[0]);
FOR_ALL_TABPAGES(tp)
{
@ -7208,7 +7208,7 @@ win_id2wp(typval_T *argvars)
{
win_T *wp;
tabpage_T *tp;
int id = get_tv_number(&argvars[0]);
int id = tv_get_number(&argvars[0]);
FOR_ALL_TAB_WINDOWS(tp, wp)
if (wp->w_id == id)
@ -7222,7 +7222,7 @@ win_id2win(typval_T *argvars)
{
win_T *wp;
int nr = 1;
int id = get_tv_number(&argvars[0]);
int id = tv_get_number(&argvars[0]);
FOR_ALL_WINDOWS(wp)
{
@ -7238,7 +7238,7 @@ win_findbuf(typval_T *argvars, list_T *list)
{
win_T *wp;
tabpage_T *tp;
int bufnr = get_tv_number(&argvars[0]);
int bufnr = tv_get_number(&argvars[0]);
FOR_ALL_TAB_WINDOWS(tp, wp)
if (wp->w_buffer->b_fnum == bufnr)