Problem: Crash when using special multi-byte character.
Solution: Don't use isalpha() for an arbitrary character.
5921aeb574
Rename vim_isalpha to mb_isalpha.
Problem: MS-Windows: fnamemodify('', ':p') does not work.
Solution: Do not consider an empty string a full path. (Yegappan Lakshmanan,
closesvim/vim#9428, closesvim/vim#9427)
5a664fe57f
Problem: No ASAN support for MSVC.
Solution: Add ASAN support and fix a coupld of uncovered problems. (Yegappan
Lakshmanan, closesvim/vim#9357)
6df0f2759d
Problem: pathshorten() only supports using one character.
Solution: Add an argument to control the length. (closesvim/vim#7006)
6a33ef0deb
Cherry-pick a line in test from patch 8.2.0634.
Use Nvim's config paths in docs.
shorten_dir() returning a pointer looks a bit confusing here, as it is
actually the same pointer passed to it, and it doesn't really reduce
much code, so change it back to void.
Assigning rettv->vval.v_string = NULL is not needed if a pointer is
within 64 bits. While this is usually the case, I'm not sure if it can
be taken for granted.
Problem: URLs with a dash in the scheme are not recognized.
Solution: Allow for a scheme with a dash, but not at the start or end.
(Tsuyoshi CHO, closesvim/vim#8299)
7b7a118e74
Problem: Problem with :cd when editing file in non-existent directory. (Yee
Cheng Chin)
Solution: Prepend the current directory to get the full path. (closesvim/vim#8903)
c6376c7984
Problem: Giving error messages is not flexible.
Solution: Add semsg(). Change argument from "char_u *" to "char *", also
for msg() and get rid of most MSG macros. (Ozaki Kiichi, closes
vim/vim#3302) Also make emsg() accept a "char *" argument. Get rid of
an enormous number of type casts.
f9e3e09fdc
working on get_foldtext and wanted to get rid of the curwin backup/restore.
Turns out it's not possible else f_foldtext is run on the same window.
Kept the cleanup anyway.
Problem: Cannot recover from a swap file.
Solution: Do not expand environment variables in the swap file name.
Do not check the extension when we already know a file is a swap
file. (Ken Takata, closes 4415, closesvim/vim#4369)
99499b1c05
Problem: May free memory twice when out of memory.
Solution: Check that backslash_halve_save() returns a different pointer.
(Dominique Pelle, closesvim/vim#4847)
f1552d07d7
Problem: MS-Windows: Backslashes and wildcards in backticks don't work.
Solution: Do not handle backslashes inside backticks in the wrong place.
(Yasuhiro Matsumoto, closesvim/vim#1942)
39d21e3c30
- Minimum required libuv is now v1.12
- Because `uv_os_getenv` requires allocating, we must manage a map
(`envmap` in `env.c`) to maintain the old behavior of `os_getenv` .
- free() map-items after removal. khash.h does not make copies of
anything, so even its keys must be memory-managed by the caller.
closes#8398closes#9267
Rework-of: ea7491586f
Helped-by: Björn Linse <bjorn.linse@gmail.com>
- The old (Vim) use of (char_u **)"" before ea7491586f is garbage,
which hints that this value was never used.
- The necessary condition is next to the NULL assigmnent, the pointer
would only be started to be accessed, if the length assignment next to
it is also changed.
Problem: Using uninitialized memory when 'isfname' is empty.
Solution: Don't call getpwnam() without an argument. (Dominique Pelle,
closesvim/vim#1464)
187a4f2814