aboutsummaryrefslogtreecommitdiff
path: root/src/nvim/eval.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/nvim/eval.c')
-rw-r--r--src/nvim/eval.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/src/nvim/eval.c b/src/nvim/eval.c
index 3e855ece15..bebadc1282 100644
--- a/src/nvim/eval.c
+++ b/src/nvim/eval.c
@@ -5050,6 +5050,7 @@ static int get_lit_string_tv(char_u **arg, typval_T *rettv, int evaluate)
/// @return the function name of the partial.
char_u *partial_name(partial_T *pt)
+ FUNC_ATTR_PURE
{
if (pt->pt_name != NULL) {
return pt->pt_name;
@@ -6401,6 +6402,9 @@ dict_T *get_win_info(win_T *wp, int16_t tpnr, int16_t winnr)
{
dict_T *const dict = tv_dict_alloc();
+ // make sure w_botline is valid
+ validate_botline(wp);
+
tv_dict_add_nr(dict, S_LEN("tabnr"), tpnr);
tv_dict_add_nr(dict, S_LEN("winnr"), winnr);
tv_dict_add_nr(dict, S_LEN("winid"), wp->handle);
@@ -8522,6 +8526,7 @@ static void check_vars(const char *name, size_t len)
/// check if special v:lua value for calling lua functions
bool is_luafunc(partial_T *partial)
+ FUNC_ATTR_PURE
{
return partial == vvlua_partial;
}
@@ -9919,6 +9924,7 @@ void func_line_end(void *cookie)
}
static var_flavour_T var_flavour(char_u *varname)
+ FUNC_ATTR_PURE
{
char_u *p = varname;