| Commit message (Collapse) | Author | Age |
|
|
|
|
|
| |
Problem: Cannot distinguish between quickfix and location list.
Solution: Add an explicit type variable. (Yegappan Lakshmanan)
https://github.com/vim/vim/commit/2d67d307ee5dba911e8fbe73193bf596ebf76c1a
|
|
|
|
|
|
|
| |
Problem: Using freed memory in quickfix code. (Dominique Pelle)
Solution: Add the quickfix_busy() flag to postpone deleting quickfix lists
until it is safe. (Yegappan Lakshmanan, closes #3538)
https://github.com/vim/vim/commit/9f84ded38b62c82a4ee57b54f403b1b185ed8170
|
|
|
|
|
|
| |
Problem: Too often indexing in qf_lists[].
Solution: Use a qf_list_T pointer. (Yegappan Lakshmanan)
https://github.com/vim/vim/commit/108e7b422b7b59153dd5af1fb75e83fa36ff3db4
|
|
|
|
|
|
|
| |
Problem: Quickfix code mixes using the stack and a list pointer.
Solution: Use a list pointer in more places. (Yegappan Lakshmanan,
closes vim/vim#3443)
https://github.com/vim/vim/commit/fe15b7dfa628d4edd683dae9528194c0e5510128
|
|
|
|
|
|
| |
Problem: Quickfix functions are too long.
Solution: Refactor. (Yegappan Lakshmanan, closes vim/vim#2950)
https://github.com/vim/vim/commit/de3b3677f7eace66be454196db0fbf710cfc8c5e
|
|
|
|
|
|
|
| |
Problem: :cfile does not abort like other quickfix commands.
Solution: Abort when desired. Add tests for aborting. (Yegappan Lakshmanan,
closes vim/vim#5121)
https://github.com/vim/vim/commit/6a0cc916bd3cd6c2fd88b2972c92ade225603229
|
|
|
|
|
|
| |
Problem: "gN" is off by one in Visual mode.
Solution: Check moving forward. (Christian Brabandt, vim/vim#5075)
https://github.com/vim/vim/commit/453c19257f6d97904ec2e3823e88e63c983f2f9a
|
|
|
|
|
|
|
| |
Problem: "gn" doesn't work quite right. (Jaehwang Jerry Jung)
Solution: Improve and simplify the search logic. (Christian Brabandt,
closes vim/vim#5103, closes vim/vim#5075)
https://github.com/vim/vim/commit/edaad6e0a0e3c1fcb6a5c2771e647c52475bb19c
|
|
|
|
|
|
| |
Problem: Searchit() has too many arguments.
Solution: Move optional arguments to a struct. Add the "wrapped" argument.
https://github.com/vim/vim/commit/92ea26b925a0835badb0af2d5887238a4198cabb
|
|
|
|
|
| |
Problem: "%v" in 'errorformat' does handle multi-byte characters.
Solution: Handle multi-byte characters. (Yegappan Lakshmanan, closes vim/vim#3700)
https://github.com/vim/vim/commit/c45eb770a5988734ff2c572e5e2ce307158c33c8
|
| |
|
|
|
|
|
|
| |
Problem: Checking for empty quickfix stack is not consistent.
Solution: Use qf_stack_empty(). (Yegappan Lakshmanan)
https://github.com/vim/vim/commit/019dfe6855e011c02427bb922aafeae0245372c9
|
|
|
|
|
|
| |
Problem: The ex_make() function is too long.
Solution: Split it into several functions. (Yegappan Lakshmanan)
https://github.com/vim/vim/commit/b434ae2a1fcbbd43244c6130451de7f14346e224
|
|
|
|
|
|
| |
Problem: copy_loclist() is too long.
Solution: Split in multiple functions. (Yegappan Lakshmanan)
https://github.com/vim/vim/commit/09037503ea5f957ad23121bc61e15e4bb1765edf
|
|
|
|
|
|
| |
Problem: The ex_copen() function is too long.
Solution: Refactor to split off two functions. (Yegappan Lakshmanan)
https://github.com/vim/vim/commit/476c0db00205590974395df717519407a7717270
|
|
|
|
|
|
|
| |
Problem: Cannot get the window id associated with the location list.
Solution: Add the "filewinid" argument to getloclist(). (Yegappan
Lakshmanan, closes vim/vim#3202)
https://github.com/vim/vim/commit/c9cc9c78f21caba7ecb5c90403df5e19a57aa96a
|
|
|
|
|
|
| |
Problem: Quickfix code uses cmdidx too often.
Solution: Add is_loclist_cmd(). (Yegappan Lakshmanan)
https://github.com/vim/vim/commit/396659592fe039decc8c088694912067fe32a681
|
|
|
|
|
|
|
| |
Problem: qf_init_ext() is too long.
Solution: Split it into multiple functions. (Yegappan Lakshmanan,
closes vim/vim#2939)
https://github.com/vim/vim/commit/6053f2d29a979ffed1fe01b0a2f28e23750530e9
|
|\
| |
| | |
vim-patch:8.1.{2185,2188,2190,2197}
|
| |
| |
| |
| |
| |
| | |
Problem: ExitPre autocommand may cause accessing freed memory.
Solution: Check the window pointer is still valid. (closes vim/vim#5093)
https://github.com/vim/vim/commit/34ba06b6e6f94bb46062e6c85dbfdcbb0d255ada
|
| |
| |
| |
| |
| |
| | |
Problem: Syntax test fails on Mac.
Solution: Limit the window size to 20 rows.
https://github.com/vim/vim/commit/83e9a1ce75818a78c5ddf8dcfb820634ca6fabff
|
| |
| |
| |
| |
| |
| |
| |
| | |
Problem: Build error for missing define.
Solution: Add missing change.
https://github.com/vim/vim/commit/2b78ab5d0c91c229715ae140a34978506343bde3
These "WILD_" macros are used in earlier vim patches.
|
| |
| |
| |
| |
| |
| | |
Problem: Syntax test fails.
Solution: Add missing file patch.
https://github.com/vim/vim/commit/bbfd1562aeaa5b40b6451effc399846b692d6992
|
|\ \
| |/
|/| |
vim-patch:8.1.{1099,1228,1962} add 'tagfunc'
|
| |
| |
| |
| |
| |
| | |
Problem: Leaking memory when using tagfunc().
Solution: Free the user_data. (Dominique Pelle, closes vim/vim#4886)
https://github.com/vim/vim/commit/55008aad50601cae079037fda8fb434cde70c0f4
|
| |
| |
| |
| |
| |
| | |
Problem: Not possible to process tags with a function.
Solution: Add tagfunc() (Christian Brabandt, Andy Massimino, closes vim/vim#4010)
https://github.com/vim/vim/commit/45e18cbdc40afd8144d20dcc07ad2d981636f4c9
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
The `HASHTAB_ITER` logic keeps track of how many entries in the hash
table are left to visit, decrementing this on each iteration of the
loop. This was previously decremented at the end of the loop body:
```c
size_t hi##todo_ = hi##ht_->ht_used;
for (hashitem_T *hi = hi##ht_->ht_array; hi##todo_; hi++) {
if (!HASHITEM_EMPTY(hi)) {
{
<user code, macro-inserted>
}
hi##todo_--; // <--- important decrement here
}
}
```
This meant that if the body of the loop (substituted in via macro
expansion) contained a `continue` statement, we'd skip decrementing our
counter, meaning we'd iterate too many times over the hash table,
usually leading to an out of bounds read beyond the hash table's
memory, or uninitialised/null pointers from unused hash table slots.
Decrementing `hi##todo` before the arbitrary loop body protects us from
this, and has no adverse side-effects since only the macro code can (or
should) use this variable.
Before this commit, no code within `HASHTAB_ITER()` contained a
`continue`, meaning this bug was left dormant and the fix has a very
minimal chance of introducing any bugs.
|
| |
| |
| |
| |
| |
| |
| | |
Problem: The do_tag() function is too long.
Solution: Factor parts out to separate functions. Move simplify_filename()
to a file where it fits better. (Andy Massimino, closes vim/vim#4195)
https://github.com/vim/vim/commit/b4a6020ac6a0638167013f1e45ff440ddc8a1671
|
| |
| |
| |
| |
| |
| |
| |
| | |
Problem: Heredoc assignment not skipped in if block.
Solution: Check if "skip" is set.
https://github.com/vim/vim/commit/b1ba9abcb385b0a5355788a7eefef78ec68d2f65
Fixes https://github.com/neovim/neovim/issues/11264
|
| |
| |
| | |
unibi_from_term calls getenv internally, so exclusive control is required.
|
|\ \
| | |
| | | |
vim-patch:8.1.{1585,1625,1723,1729}
|
| | |
| | |
| | |
| | |
| | |
| | | |
Problem: Heredoc with trim not properly handled in function.
Solution: Allow for missing indent. (FUJIWARA Takuya, closes vim/vim#4713)
https://github.com/vim/vim/commit/ecaa75b4cea329a3902b8565e028b32279b8322b
|
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Problem: Heredoc assignment has no room for new features. (FUJIWARA Takuya)
Solution: Require the marker does not start with a lower case character.
(closes vim/vim#4705)
https://github.com/vim/vim/commit/24582007294b0db3be9669d3b583ea45fc4f19b8
|
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Problem: Script line numbers are not exactly right.
Solution: Handle heredoc and continuation lines better. (Ozaki Kiichi,
closes vim/vim#4611, closes vim/vim#4511)
https://github.com/vim/vim/commit/bc2cfe4672d370330b8698d4d025697a9a6ec569
|
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Problem: :let-heredoc does not trim enough.
Solution: Trim indent from the contents based on the indent of the first
line. Use let-heredoc in more tests.
https://github.com/vim/vim/commit/e7eb92708ec2092a2fc11e78703b5dcf83844412
|
| | |
| | |
| | |
| | |
| | |
| | | |
It needs to return to not output any remaining parts.
Followup to https://github.com/neovim/neovim/pull/10926
Ref: https://github.com/neovim/neovim/issues/10923
|
|\ \ \
| | | |
| | | | |
vim-patch:8.1.{2151,2152,2161,2162,2175,2177,2178}
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Problem: Accessing uninitialized memory in test.
Solution: Check if there was a match before using the match position.
(Dominique Pelle, closes vim/vim#5088)
https://github.com/vim/vim/commit/15ee567809a9808693163dd7c357ef0c172ecc9e
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Problem: Dart files are not recognized.
Solution: Add a filetype rule. (Eugene Ciurana, closes vim/vim#5087)
https://github.com/vim/vim/commit/afbdb905c37675851e79d21239f502cd8e4ced9e
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Problem: Meson files are not recognized.
Solution: Add the meson filetype. (Liam Beguin , Nirbheek Chauhan,
closes vim/vim#5056) Also recognize hollywood.
https://github.com/vim/vim/commit/c3bf7b56f2703e2d6f36dfb05fd32b5b43ce3c3f
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Problem: State test is a bit flaky.
Solution: Add to the list of flaky tests.
https://github.com/vim/vim/commit/3c8cd4a1dcbc34d8818a2a38b1d1e4755da9edc2
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Problem: Popup resize test is flaky. (Christian Brabandt)
Solution: Add the function to the list of flaky tests.
https://github.com/vim/vim/commit/4e03933726e3698d962bf7dacdd27f306a4c5086
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Problem: Mapping test fails.
Solution: Run the test separately.
https://github.com/vim/vim/commit/4bd88d568a81d37df69dc3cf8cdd8d9dbb4011b7
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Problem: Problems navigating tags file on MacOS Catalina.
Solution: Use fseek instead of lseek. (John Lamb, fixes vim/vim#5061)
https://github.com/vim/vim/commit/27fc8cab227e30f649f52e74efd58ad56d21e9bb
|
| | | |
| | | |
| | | |
| | | |
| | | | |
Problem: Error E303 is not useful when 'directory' is empty.
Solution: Skip the error message. (Daniel Hahler, vim/vim#5067)
https://github.com/vim/vim/commit/00e192becd50a38cb21a1bc3f86fcc7a21f8ee88
|
|/ / /
| | |
| | |
| | |
| | |
| | | |
Problem: Test42 seen as binary by git diff.
Solution: Add .gitattributes file. Make explicit that 'cpo' does not
contain 'S'. (Daniel Hahler, closes vim/vim#5072)
https://github.com/vim/vim/commit/5b39d7adb0b9f02afe242f607d4c96250f06965d
|
| | |
| | |
| | |
| | |
| | | |
Problem: "gk" and "gj" do not work correctly in number column.
Solution: Allow for a negative "curswant". (Zach Wegner, closes vim/vim#4969)
https://github.com/vim/vim/commit/ceba3dd5187788e09f65bd41b07b40f6f9aab953
|
|\ \ \
| | | |
| | | | |
vim-patch:8.1.{84,85,361}
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Problem: Remote user not used for completion. (Stucki)
Solution: Use $USER too. (Dominique Pelle, closes #3407)
https://github.com/vim/vim/commit/6b0b83f768cf536b34ce4d3f2de6bf62324229aa
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Problem: No test for completing user name and language.
Solution: Add tests. (Dominique Pelle, closes #2978)
https://github.com/vim/vim/commit/5f8f2d378a4f6d7db12806f3e35ec6f7fc6bd1f3
|