Problem: Cannot decide whether to skip test that fails with 64 bit ints.
(closesvim/vim#9072)
Solution: Add v:sizeofint, v:sizeoflong and v:sizeofpointer. Improve the
check for multiply overflow.
69b3072d98
Omit v:sizeof{int,long,pointer} as they're only really used for tests.
Problem: Crash when pasting too many times.
Solution: Limit the size to what fits in an int. (closesvim/vim#8962)
eeed1c7ae0
Note that this overflow check pretty bad.
It also doesn't work well on Windows (where sizeof(int) == sizeof(long)).
This is all temporary; everything here is rewritten in future patches anyway.
e_resulting_text_too_long was already cherry-picked.
totlen is size_t in Nvim, but is int in Vim. This means we'll need some casts.
We could technically adjust the logic in do_put to use the entire range of
size_t in stuff like totlen, but there's not much gain, and it's much easier to
just port the patch like Vim as was done before (also allows us to use the same
tests).
Problem: An error from an expression mapping messes up the display.
Solution: When the expression results in an empty string return K_IGNORE.
In cmdline mode redraw the command line. (closesvim/vim#9726)
74a0a5b26d
Problem: When an expr mapping moves the cursor it is not restored.
Solution: Position the cursor after an expr mapping. (closesvim/vim#5256)
4ebe0e62d0
Problem: <amatch> is expanded like a file name for DirChangedPre.
Solution: Do not expand <amatch>. (closesvim/vim#9742) Also for the User event.
f6246f51e3
Problem: MS-Windows: cannot use the mouse in the console with VIMDLL.
Solution: use add_char2buf() instead of fix_input_buffer(). (closesvim/vim#9784,
closesvim/vim#9769)
646bb7247a
N/A patches for version.c:
vim-patch:8.2.4392: MS-Windows with VIMDLL: Escaping CSI is wrong
Problem: MS-Windows with VIMDLL: Escaping CSI is wrong.
Solution: Put back #ifdef. (Ken Takata, closesvim/vim#9769)
64d95cfc56
vim-patch:8.2.4394: UTF8 select mode test fails on MS-Windows
Problem: UTF8 select mode test fails on MS-Windows.
Solution: Revert the #ifdef change.
9fdde7992a
Problem: "vrc" does not replace composing characters, while "rc" does.
Solution: Check the byte length including composing characters.
(closesvim/vim#9351)
8ee6028de3
vim-patch:8.2.3823: test for visual replace is in wrong function
Problem: Test for visual replace is in wrong function.
Solution: Move it to another function.
6ecf58b0d7
Problem: When cursor is move for block append wrong text is inserted.
Solution: Calculate an offset. (Christian Brabandt, closesvim/vim#8433,
closesvim/vim#8288)
4067bd3604
Problem: Inconsistently using GetVimCommand() and v:progpath. (Daniel
Hahler)
Solution: Use GetVimCommand(). (closesvim/vim#4806)
93344c2d70
Cherry-pick a change to test_profile.vim from patch 8.1.1544.
Cherry-pick a change to test_vimscript.vim from patch 8.1.1826.
Some of the args are no-op in Nvim, and `-i NONE` and `--headless` are
already added by `GetVimCommand()`. I'll try to match the order of args
in upstream, substituting `--not-a-term` with `--headless`.
Problem: When reloading not all properties are detected.
Solution: Add the "edit" value to v:fcs_choice. (Rob Pilling, closesvim/vim#9579)
8196e94a8b
Cherry-pick some test changes from patch 8.1.1826.
Problem: Changes are only detected with one second accuracy.
Solution: Use the nanosecond time if possible. (Leah Neukirchen,
closesvim/vim#8873, closesvim/vim#8875)
0a7984af56
In Nvim Test_checktime_fast() is also flaky. Add a delay to avoid that.