aboutsummaryrefslogtreecommitdiff
path: root/src/nvim/eval/typval.c
diff options
context:
space:
mode:
authorzeertzjq <zeertzjq@outlook.com>2023-02-24 15:03:28 +0800
committerzeertzjq <zeertzjq@outlook.com>2023-02-24 15:36:08 +0800
commit904d0995837a2569ae640f5253da3dd4569fec6f (patch)
treecf18e60265b26ed416e71c64b0370c3cb436e73e /src/nvim/eval/typval.c
parent47bc297d81cf7dab5a28608657ddab3c09f794d0 (diff)
downloadrneovim-904d0995837a2569ae640f5253da3dd4569fec6f.tar.gz
rneovim-904d0995837a2569ae640f5253da3dd4569fec6f.tar.bz2
rneovim-904d0995837a2569ae640f5253da3dd4569fec6f.zip
vim-patch:8.2.2449: Vim9: flatten() always changes the list type
Problem: Vim9: flatten() always changes the list type. Solution: Disallow using flatten() and add flattennew(). https://github.com/vim/vim/commit/3b690069730805a147d45d92eaca4dc838272d1d Co-authored-by: Bram Moolenaar <Bram@vim.org>
Diffstat (limited to 'src/nvim/eval/typval.c')
-rw-r--r--src/nvim/eval/typval.c9
1 files changed, 4 insertions, 5 deletions
diff --git a/src/nvim/eval/typval.c b/src/nvim/eval/typval.c
index 9a3a1c3c0f..ab4245b59a 100644
--- a/src/nvim/eval/typval.c
+++ b/src/nvim/eval/typval.c
@@ -654,14 +654,14 @@ tv_list_copy_error:
/// @param[in] maxdepth Maximum depth that will be flattened
///
/// @return OK or FAIL
-int tv_list_flatten(list_T *list, long maxdepth)
- FUNC_ATTR_NONNULL_ARG(1) FUNC_ATTR_WARN_UNUSED_RESULT
+void tv_list_flatten(list_T *list, long maxdepth)
+ FUNC_ATTR_NONNULL_ARG(1)
{
listitem_T *item;
listitem_T *to_free;
int n;
if (maxdepth == 0) {
- return OK;
+ return;
}
n = 0;
@@ -669,7 +669,7 @@ int tv_list_flatten(list_T *list, long maxdepth)
while (item != NULL) {
fast_breakcheck();
if (got_int) {
- return FAIL;
+ return;
}
if (item->li_tv.v_type == VAR_LIST) {
listitem_T *next = item->li_next;
@@ -695,7 +695,6 @@ int tv_list_flatten(list_T *list, long maxdepth)
item = item->li_next;
}
}
- return OK;
}
/// Extend first list with the second