aboutsummaryrefslogtreecommitdiff
path: root/src
Commit message (Collapse)AuthorAge
...
| * | | | fix(eval): partially port v8.2.3284Sean Dewar2021-09-16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | These were issues that I found while porting that I fixed upstream. :^) Very little of the patch can be exactly ported as we're a bit behind on dependant patches (we also can't use the exact :for emsg, as we don't support iterating over Strings yet), so just translate the fixes as best as we can for now. Include latest relevant doc changes from: - v8.1.0815 - v8.2.2658
| * | | | fix(f_remove): partially port v8.2.2779Sean Dewar2021-09-16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fixes remove() copying one extra byte after the end of a Blob's buffer. Can't be fully ported as the change is from blob_remove(), which hasn't been ported yet.
| * | | | vim-patch:8.2.2712: memory leak when adding to a blob failsSean Dewar2021-09-16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: Memory leak when adding to a blob fails. Solution: Clear the second typval before returning. https://github.com/vim/vim/commit/f2dd9cb9958962302d33fab8fe6439645a2d1e1b
| * | | | vim-patch:8.2.1473: items in a list given to :const can still be modifiedSean Dewar2021-09-16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: Items in a list given to :const can still be modified. Solution: Work like ":lockvar! name" but don't lock referenced items. Make locking a blob work. https://github.com/vim/vim/commit/021bda56710d98c09a6b35610a476ab2dd8c58ad
| * | | | vim-patch:8.2.0829: filter() may give misleading error messageSean Dewar2021-09-15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: filter() may give misleading error message. Solution: Also mention Blob as an allowed argument. https://github.com/vim/vim/commit/fcb0b61d15f66f0e9116a6bc56d9d8105bb913cf Rename Test_map_fails() to Test_map_filter_fails() from v8.2.0610 and include the modeline.
| * | | | fix(f_insert): partially port v8.2.0634Sean Dewar2021-09-15
| | | | | | | | | | | | | | | | | | | | | | | | | Fixes a crash in f_insert() when inserting into a NULL blob. Include blob-related test changes and some other simple changes.
| * | | | vim-patch:8.2.0521: crash when reading a blob failsSean Dewar2021-09-15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: Crash when reading a blob fails. Solution: Avoid keeping a pointer to a freed blob object. (Dominique Pelle, closes vim/vim#5890) Adjust error messages. https://github.com/vim/vim/commit/15352dc6ec43fd50cc3be4f4fd1ad74d5619da20
| * | | | vim-patch:8.2.0404: writefile() error does not give a hintSean Dewar2021-09-15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: Writefile() error does not give a hint. Solution: Add remark about first argument. https://github.com/vim/vim/commit/18a2b87ca27c378a555b20f14a284d2ce3511427
| * | | | vim-patch:8.2.0184: blob test failsSean Dewar2021-09-15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: Blob test fails. Solution: Check for different error when float feature is missing. https://github.com/vim/vim/commit/92be6e3f46120bb8e6c8fca0a7868a08df8b3345 Nvim always has the float feature, but include the changes to the test anyway.
| * | | | vim-patch:8.2.0121: filter() and map() on blob don't workSean Dewar2021-09-15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: filter() and map() on blob don't work. Solution: Correct the code. (closes vim/vim#5483) https://github.com/vim/vim/commit/49c57ce50019b667e5005ce1cfb8cdc2e48bf868
| * | | | vim-patch:8.1.1671: copying a blob may result in it being lockedSean Dewar2021-09-15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: Copying a blob may result in it being locked. Solution: Reset v_lock. (Ken Takata, closes vim/vim#4648) https://github.com/vim/vim/commit/b7b9efbccfe17ee3f7b1bb877b7745d5bfbf0804
| * | | | vim-patch:8.1.1023: may use NULL pointer when indexing a blobSean Dewar2021-09-15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: May use NULL pointer when indexing a blob. (Coverity) Solution: Break out of loop after using index on blob https://github.com/vim/vim/commit/61be376337b0374d55a4b1d8206b2ec87ca54252
| * | | | vim-patch:8.1.0802: negative index doesn't work for BlobSean Dewar2021-09-15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: Negative index doesn't work for Blob. Solution: Make it work, add a test. (closes vim/vim#3856) https://github.com/vim/vim/commit/a5be9b62480a6f338a72c01e57c9edd0bca8048b Leave tv_blob_get()'s return type untouched.
| * | | | vim-patch:8.1.0798: changing a blob while iterating over it works strangelySean Dewar2021-09-15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: Changing a blob while iterating over it works strangely. Solution: Make a copy of the Blob before iterating. https://github.com/vim/vim/commit/dd29ea18050284526174b5685781469240f5bc4a
| * | | | vim-patch:8.1.0797: error E898 is used twiceSean Dewar2021-09-15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: Error E898 is used twice. Solution: Rename the Blob error to E899. (closes vim/vim#3853) https://github.com/vim/vim/commit/bf821bccf18453b01d25bee53e4954b02a5dd0e6
| * | | | vim-patch:8.1.0793: incorrect error messages for functions that take a BlobSean Dewar2021-09-15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: Incorrect error messages for functions that now take a Blob argument. Solution: Adjust the error messages. (Dominique Pelle, closes vim/vim#3846) https://github.com/vim/vim/commit/0d17f0d1c09fa6db306336695ba646c21ea24909
| * | | | vim-patch:8.1.0765: string format of a Blob can't be parsed backSean Dewar2021-09-15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: String format of a Blob can't be parsed back. Solution: Use 0z format. https://github.com/vim/vim/commit/4131fd5509b283e978e8c6161f09643b64719787
| * | | | vim-patch:8.1.0756: copy() does not make a copy of a BlobSean Dewar2021-09-15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: copy() does not make a copy of a Blob. Solution: Make a copy. https://github.com/vim/vim/commit/3d28b58c519c9fc3427587201423c74746cc219e Replace vim_memsave() with xmemdup().
| * | | | vim-patch:8.1.0755: error message for get() on a Blob with invalid indexSean Dewar2021-09-15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: Error message for get() on a Blob with invalid index. Solution: Return an empty Blob, like get() on a List does. https://github.com/vim/vim/commit/2ea773b468a1143214c2f12b91ab5e1e7abb4a14
| * | | | vim-patch:8.1.0742: not all Blob operations are testedSean Dewar2021-09-15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: Not all Blob operations are tested. Solution: Add more testing for Blob. https://github.com/vim/vim/commit/05500ece6282407f9f7227aaf564e24147326863 Test_readfile_binary is already ported.
| * | | | vim-patch:8.1.0738: using freed memory, for loop over blob leaks memorySean Dewar2021-09-15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: Using freed memory, for loop over blob leaks memory. Solution: Clear pointer after freeing memory. Decrement reference count after for loop over blob. https://github.com/vim/vim/commit/ecc8bc482ba601b9301a6c129c92a0d1f8527f72
| * | | | feat(decode_string): decode binary string with NULs to BlobSean Dewar2021-09-15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Strings that previously decoded into a msgpack special for representing BINs with NULs now convert to Blobs. It shouldn't be possible to decode into this special anymore after this change? Notably, Lua strings with NULs now convert to Blobs when passed to VimL.
| * | | | feat(shada): restore Blob globals properlySean Dewar2021-09-15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | As Strings and Blobs are encoded as msgpack BINs, the current ShaDa implementation will restore global Blob variables as Strings (or msgpack special dicts if they contain NULs). Encode an additional element with Blob globals to differentiate them from Strings so that we can restore them with the correct type. Adjust variables_spec.lua's autotest() to also check for proper type.
| * | | | feat(msgpack): convert Blobs to BIN stringsSean Dewar2021-09-15
| | | | |
| * | | | feat(json): convert Blobs to array of byte valuesSean Dewar2021-09-15
| | | | | | | | | | | | | | | | | | | | | | | | | Similiar to how Vim does it, but to be consistent with how Nvim encodes lists, add a space after every comma.
| * | | | feat(api): convert Blobs to API stringsSean Dewar2021-09-15
| | | | | | | | | | | | | | | | | | | | Note that these are not NUL-terminated; the API supports this.
| * | | | feat(nlua): convert Blobs to stringsSean Dewar2021-09-15
| | | | |
| * | | | vim-patch:8.1.0736: code for Blob not sufficiently testedSean Dewar2021-09-15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: Code for Blob not sufficiently tested. Solution: Add more tests. Fix uncovered crash. Add test_null_blob(). https://github.com/vim/vim/commit/c0f5a78c15b194f23bedb82e6825e34f481e6532 eval0 and ex_echo's emsg-specific changes have already been ported. These tests uncover another crash that was fixed in v8.1.0738.
| * | | | vim-patch:8.1.0735: cannot handle binary dataSean Dewar2021-09-15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: Cannot handle binary data. Solution: Add the Blob type. (Yasuhiro Matsumoto, closes vim/vim#3638) https://github.com/vim/vim/commit/6e5ea8d2a995b32bbc5972edc4f827b959f2702f Nvim-specific Blob conversions are implemented in future commits. Refactor write_blob() to use a FileDescriptor, as f_writefile() was refactored to use one (does not apply to read_blob()). Use var_check_lock() in f_add() for Blobs from v8.1.0897. Add a modeline to test_blob.vim and fix some doc typos. Include if_perl.txt's VIM::Blob() documentation. Interestingly, this function already worked before this port, as it just returns a Blob string literal, not an actual Blob object. N/A patches for version.c: vim-patch:8.1.0741: viminfo with Blob is not tested Problem: Viminfo with Blob is not tested. Solution: Extend the viminfo test. Fix reading a blob. Fixed storing a special variable value. https://github.com/vim/vim/commit/8c8b8bb56c724cc1bfc3d8520eec33f2d399697c vim-patch:8.1.1022: may use NULL pointer when out of memory Problem: May use NULL pointer when out of memory. (Coverity) Solution: Check for blob_alloc() returning NULL. https://github.com/vim/vim/commit/e142a9467a7f6845a426d8db6efedf246d3c13ac
* | | | | test(oldtest): re-order test_eval_stuff tests to match VimSean Dewar2021-09-16
| | | | |
* | | | | fix(eval): add the vimscript-1 feature to has()Sean Dewar2021-09-16
|/ / / / | | | | | | | | | | | | | | | | Include Test_string_concat_scriptversion1 to test that has('vimscript-1') works (excluding the :scriptversion 1 bit).
* / / / fix(:source): copy curbuf lines to memory before sourcing #15111Sean Dewar2021-09-15
|/ / / | | | | | | | | | | | | | | | | | | | | | | | | It's possible for weirdness to happen if curbuf is modified while sourcing from it via :source (with no arguments). For example: - Deleting lines from or wiping curbuf can cause internal error E315 to be thrown from ml_get. - Changing the curbuf to another buffer while sourcing can cause lines from the new curbuf to then be sourced instead.
* | | fix(:source, nvim_exec): handle Vimscript line continuations #14809Sean Dewar2021-09-14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: Anonymous :source (no args) and nvim_exec() don't support Vimscript line continuations. Solution: Factor out the concat logic into concat_continued_line() and a CONCAT_CONTINUED_LINES macro for simple concatenations where lines are fetched individually. Closes #14807
* | | Merge #15657 vim-patch:8.1.1195,8.2.{3417,3419}Justin M. Keyes2021-09-14
|\ \ \
| * | | vim-patch:8.2.3419: a failing debug expression may make Vim unusableSean Dewar2021-09-13
| | | | | | | | | | | | | | | | | | | | | | | | Problem: A failing debug expression may make Vim unusable. Solution: Suppress error messages. (closes vim/vim#8848) https://github.com/vim/vim/commit/0325d3967ce7d0fd35bc1472fd476b911b895b76
| * | | vim-patch:8.2.3417: Vim9: a failing debug expression aborts script sourcingSean Dewar2021-09-13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: Vim9: a failing debug expression aborts script sourcing. Solution: Do not let expression failure abort script sourcing. (closes vim/vim#8848) https://github.com/vim/vim/commit/072f1c68884a1e2d468a0f39e27fc28168fb4b03 Vim9script is N/A, exclude Test_Debugger_breakadd_expr. Move debuggy struct to before generated header inclusion so eval_expr_restore prototype works. Add CheckRunVimInTerminal to Test_Debugger_breakadd. Cherry-pick Test_Debugger_breakadd changes from v8.2.1440, v8.2.1736.
| * | | vim-patch:8.1.1195: Vim script debugger functionality needs cleanupSean Dewar2021-09-13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: Vim script debugger functionality needs cleanup. Solution: Move debugger code to a separate file. Add more tests. (Yegappan Lakshmanan, closes vim/vim#4285) https://github.com/vim/vim/commit/eead75c5e8e1f965548c55ee3a9388b2cb3afc36 Good to have for eval_expr_restore in v8.2.3417. Doesn't actually add any tests.
* | | | docs: third-party licenses, TEST_COLORS, system() #15665Justin M. Keyes2021-09-14
| |/ / |/| |
* | | refactor: format files with uncrustify #15663dundargoc2021-09-14
| | |
* | | fix: "redundant cast to the same type" #15662dundargoc2021-09-14
| | | | | | | | | Apply "redundant cast to the same type" fix from clangd.
* | | refactor: format tui/input.c with uncrustify (#15661)dundargoc2021-09-14
| | |
* | | refactor: format tui.c with uncrustify (#15640)dundargoc2021-09-14
|/ /
* | refactor: replace TRUE/FALSE with true/false #15647dundargoc2021-09-13
| |
* | vim-patch:8.2.3432: octave/Matlab filetype detection does not work properly ↵Christian Clason2021-09-13
| | | | | | | | | | | | | | (#15652) Problem: Octave/Matlab filetype detection does not work properly. Solution: Update the patterns used for matching. (Doug Kearns) https://github.com/vim/vim/commit/ca0627df69c29508f6f797bef27a1f5fa9a447d3
* | vim-patch:8.2.3368: not all Racket files are recognized (#15643)Christian Clason2021-09-12
| | | | | | | | | | Problem: Not all Racket files are recognized. Solution: Also recognize .rktl and .rktd files. (Doug Kearns) https://github.com/vim/vim/commit/9cd91a1e8816d727fbdbf0b3062288e15abc5f4d
* | vim-patch:8.2.3374: Pyret files are not recognized (#15642)Christian Clason2021-09-12
| | | | | | | | | | Problem: Pyret files are not recognized. Solution: Recognize .arr files as Pyret. (Doug Kearns) https://github.com/vim/vim/commit/eb05d05f8a049b32ba1b992074534ca4763e46b3
* | Merge pull request #15550 from jasonccox/vim-8.2.3385Christian Clason2021-09-12
|\ \ | | | | | | vim-patch:8.2.3385,8.2.3393
| * | vim-patch:8.2.3393: escaping for fish shell is skipping some charactersJason Cox2021-09-02
| | | | | | | | | | | | | | | | | | | | | Problem: Escaping for fish shell is skipping some characters. Solution: Escape character after backslash if needed. (Jason Cox, closes vim/vim#8827) https://github.com/vim/vim/commit/6631597452d4644f485a09e4036d117e5f91de70
| * | vim-patch:8.2.3385: escaping for fish shell does not work properlyJason Cox2021-09-02
| | | | | | | | | | | | | | | | | | Problem: Escaping for fish shell does not work properly. Solution: Insert a backslash before a backslash. (Jason Cox, closes vim/vim#8810) https://github.com/vim/vim/commit/6e82351130ddb8d13cf3748b47f07cae77886fc7
* | | Merge pull request #14770 from andrew-pa/fix13403Björn Linse2021-09-12
|\ \ \ | | | | | | | | Fix relative float positioning