aboutsummaryrefslogtreecommitdiff
path: root/src/nvim/diff.c
Commit message (Collapse)AuthorAge
* Remove dead codeJan Edmund Lazo2019-10-06
|
* vim-patch:8.1.2120: some MB_ macros are more complicated than necessaryJan Edmund Lazo2019-10-06
| | | | | | | Problem: Some MB_ macros are more complicated than necessary. (Dominique Pelle) Solution: Simplify the macros. Expand inline. https://github.com/vim/vim/commit/1614a14901558ca091329315d14a7d5e1b53aa47
* getdigits: introduce `strict`, `def` parametersJustin M. Keyes2019-09-13
| | | | | | | | | | | | Problem: During a refactor long ago, we changed the `getdigits_*` familiy of functions to abort on overflow. But this is often wrong, because many of these codepaths are handling user input. Solution: Decide at each call-site whether to use "strict" mode. fix #5555
* includesDaniel Hahler2019-08-07
|
* vim-patch:8.1.0956: context:0 in 'diffopt' #10622Jan Edmund Lazo2019-07-27
| | | | | Problem: Using context:0 in 'diffopt' does not work well. Solution: Make zero context do the same as one line context. (closes vim/vim#4005) https://github.com/vim/vim/commit/b9ddda6c2d98d99c09d58145c1b5b4042a8fd92c
* cleanup: remove mch_fopen in favor of os_fopenJustin M. Keyes2019-07-25
|
* vim-patch:8.0.1496: VIM_CLEAR()Justin M. Keyes2019-05-25
| | | | | | | | Problem: Clearing a pointer takes two lines. Solution: Add VIM_CLEAR() and replace vim_clear(). (Hirohito Higashi, closes #2629) vim-patch:8.0.1481
* PVS/V501: diff.c: silence warningJustin M. Keyes2019-01-18
| | | | | | False positive: vim_fgets has side effects. ref 8586770e1fd8
* PVS/V501: diff.c: silence warningJustin M. Keyes2019-01-05
| | | | | | False positive: vim_fgets has side effects. ref 8586770e1fd8
* PVS/V547: diff.c: xmalloc() never returns NULLJustin M. Keyes2019-01-04
| | | | | | Normally we consider OOM to be fatal, but the diff module has extra functionality to handle OOM in case huge files are compared. Use try_malloc instead of xmalloc in that case.
* PVS/V547: diff.c: Expression is always trueJustin M. Keyes2019-01-04
|
* PVS/V501: diff.c: silence warningJustin M. Keyes2019-01-04
| | | | False positive: vim_fgets has side effects.
* vim-patch:8.1.0562: parsing of 'diffopt' is slightly wrongAnatolii Sakhnik2018-12-09
| | | | | | | | Problem: Parsing of 'diffopt' is slightly wrong. Solution: Fix the parsing and add a test. (Jason Franklin, Christian Brabandt) https://github.com/vim/vim/commit/b6fc72851c45a36a370f9516c68508e47b41c4c1
* vim-patch:8.1.0513: no error for set diffopt+=algorithm:Anatolii Sakhnik2018-12-09
| | | | | | | Problem: No error for set diffopt+=algorithm:. Solution: Check for missing argument. (Hirohito Higashi, closes #3598) https://github.com/vim/vim/commit/d0721058f494143186f66a60151c9634031a8c96
* vim-patch:8.1.0502: internal diff fails when diffing a context diffAnatolii Sakhnik2018-12-09
| | | | | | | Problem: Internal diff fails when diffing a context diff. (Hirohito Higashi) Solution: Only use callback calls with one line. (closes #3581) https://github.com/vim/vim/commit/f080d70a82f3a4477f346d9efcdfaec1bc1e1d58
* vim-patch:8.1.0497: :%diffput changes order of linesAnatolii Sakhnik2018-12-09
| | | | | | | Problem: :%diffput changes order of lines. (Markus Braun) Solution: Do adjust marks when using internal diff. https://github.com/vim/vim/commit/5f57bdcab77bc417ae0357fe8ad6c7259b6d25df
* vim-patch:8.1.0458: ml_get error and crash when using "do"Anatolii Sakhnik2018-12-09
| | | | | | | | Problem: Ml_get error and crash when using "do". Solution: Adjust cursor position also when diffupdate is not needed. (Hirohito Higashi) https://github.com/vim/vim/commit/df77cef92ec034796723ffa3adb12e8b46daa98e
* vim-patch:8.1.0402: the DiffUpdate event isn't triggered for :diffputAnatolii Sakhnik2018-12-09
| | | | | | | Problem: The DiffUpdate event isn't triggered for :diffput. Solution: Also trigger DiffUpdate for :diffget and :diffput. https://github.com/vim/vim/commit/198fa066b2ec011e91012c1a3d85a73df7b93f31
* vim-patch:8.1.0400: using freed memory with :diffgetAnatolii Sakhnik2018-12-09
| | | | | | | Problem: Using freed memory with :diffget. Solution: Skip ex_diffupdate() while updating diffs. (closes #3442) https://github.com/vim/vim/commit/d2b58c0a2c665075a8cfef57db6e1b37d4523e02
* vim-patch:8.1.0397: no event triggered after updating diffsAnatolii Sakhnik2018-12-09
| | | | | | | Problem: No event triggered after updating diffs. Solution: Add the DiffUpdated event. https://github.com/vim/vim/commit/e8fa05b5bc2d6d76bf5af50176a63655d00d1110
* vim-patch:8.1.0395: compiler warning on 64-bit MS-WindowsAnatolii Sakhnik2018-12-09
| | | | | | | Problem: Compiler warning on 64-bit MS-Windows. Solution: Add type cast. (Mike Williams) https://github.com/vim/vim/commit/6e272acc82af900318017061f923e7f66dc7ee7a
* vim-patch:8.1.0394: diffs are not always updated correctlyAnatolii Sakhnik2018-12-09
| | | | | | | Problem: Diffs are not always updated correctly. Solution: When using internal diff update for any changes properly. https://github.com/vim/vim/commit/e3521d9cbb786806eaff106707851d37d2c0ecef
* vim-patch:8.1.0393: not all white space difference options availableAnatolii Sakhnik2018-12-09
| | | | | | | Problem: Not all white space difference options available. Solution: Add "iblank", "iwhiteall" and "iwhiteeol" to 'diffopt'. https://github.com/vim/vim/commit/785fc6567f572b8caefbc89ec29bbd8b801464ae
* vim-patch:8.1.0375: cannot use diff mode with Cygwin diff.exeAnatolii Sakhnik2018-12-09
| | | | | | | Problem: Cannot use diff mode with Cygwin diff.exe. (Igor Forca) Solution: Skip over unrecognized lines in the diff output. https://github.com/vim/vim/commit/3b8defd0a52fc1276816608e7bb24b628ab14c2e
* vim-patch:8.1.0360: using an external diff program is slow and inflexibleAnatolii Sakhnik2018-12-09
| | | | | | | | | | | | | | | | | | Problem: Using an external diff program is slow and inflexible. Solution: Include the xdiff library. (Christian Brabandt) Use it by default. https://github.com/vim/vim/commit/e828b7621cf9065a3582be0c4dd1e0e846e335bf vim-patch:8.1.0360 vim-patch:8.1.0364 vim-patch:8.1.0366 vim-patch:8.1.0370 vim-patch:8.1.0377 vim-patch:8.1.0378 vim-patch:8.1.0381 vim-patch:8.1.0396 vim-patch:8.1.0432
* Remove has_mbyte from lines near changes in parent commitZviRackover2018-08-16
|
* Remove occurences of mb_head_offZviRackover2018-08-15
|
* vim-patch:8.0.1361: some users don't want to diff with hidden buffersJan Edmund Lazo2018-08-11
| | | | | | Problem: Some users don't want to diff with hidden buffers. Solution: Add the "hiddenoff" item to 'diffopt'. (Alisue, closes vim/vim#2394) https://github.com/vim/vim/commit/97ce419201421f65f4764549ed80307a7ef9c7a6
* diff: drop enc_utf8 check in diff_equal_char()Jan Edmund Lazo2018-08-11
| | | | enc_utf8 is always true for nvim.
* vim-patch:8.0.1046: code duplication in diff modeJan Edmund Lazo2018-08-11
| | | | | | Problem: Code duplication in diff mode. Solution: Use diff_equal_char() also in diff_cmp(). (Rick Howe) https://github.com/vim/vim/commit/ae96b8d058cffd9d07b78cb7a9ccd382185b9dd6
* vim-patch:8.0.1037: "icase" of 'diffopt' is not used for highlightingJan Edmund Lazo2018-08-11
| | | | | | Problem: "icase" of 'diffopt' is not used for highlighting differences. Solution: Also use "icase". (Rick Howe) https://github.com/vim/vim/commit/da22b8cc8b1b96fabd5a4c35c57b04a351340fb1
* fold: add const to hasFoldingWin() variablesJan Edmund Lazo2018-08-02
| | | | cache is bool so update callers to pass true/false, not TRUE/FALSE.
* diff: refactor diff_a_works to use TriStateJan Edmund Lazo2018-08-01
|
* API: Implement buffer updatesPeter Hodge2018-05-23
| | | | | Originally written by @phodge in https://github.com/neovim/neovim/pull/5269.
* diff: Fix PVS/V547: remove no longer needed OOM handlerZyX2018-04-10
|
* vim-patch:8.0.0736: OptionSet not triggered when entering diff modeJustin M. Keyes2018-02-11
| | | | | | | | | Problem: The OptionSet autocommand event is not triggered when entering diff mode. Solution: use set_option_value() instead of setting the option directly. Change the tests from old to new style. (Christian Brabandt) https://github.com/vim/vim/commit/04f62f881c5743d2fdaf7324f6a715381f0d5fcf
* exit: annotate FUNC_ATTR_NORETURN functions #7954 (#7954)Justin M. Keyes2018-02-07
| | | | This should fix a particular false positive from clang 5.0.0 scan-build, which thinks that nlua_init() can continue after preserve_exit().
* vim-patch:8.0.0448: some macros are lower case (#7936)KunMing Xie2018-01-30
| | | | | | | Problem: Some macros are in lower case, which can be confusing. Solution: Make a few lower case macros upper case. https://github.com/vim/vim/commit/b5aedf3e228d35821591da9ae8501b61cf2e264c ref #6297
* ex_diffpatch: don't need redraw_later(CLEAR), Nvim uses pipesJustin M. Keyes2018-01-28
|
* vim-patch:8.0.0444: diffpatch fails when the file name has a quoteJustin M. Keyes2018-01-21
| | | | | | | Problem: Diffpatch fails when the file name has a quote. Solution: Escape the name properly. (zetzei) https://github.com/vim/vim/commit/a95ab321200f0239991bf53756b17cd7b90745f9
* vim-patch:8.0.0442: patch shell command not well escapedJustin M. Keyes2018-01-21
| | | | | | | | Problem: Patch shell command uses double quotes around the argument, which allows for $HOME to be expanded. (Etienne) Solution: Use single quotes on Unix. (closes vim/vim#1543) https://github.com/vim/vim/commit/1ef73e33c9414eb02c229d8234aafd9d481a8856
* vim-patch:8.0.0599: diff mode is insufficiently testedJustin M. Keyes2018-01-21
| | | | | | | | | | | | | | | Problem: diff mode is insufficiently tested Solution: Add more test cases. (Dominique Pelle, closes vim/vim#1685) https://github.com/vim/vim/commit/79a213d6a4e909703524a7f1ad985c7bd40650a6 NA / already applied: --------------------- vim-patch:8.0.0421: diff mode wrong when adding line at end of buffer Problem: Diff mode is displayed wrong when adding a line at the end of a buffer. Solution: Adjust marks in diff mode. (James McCoy, closes vim/vim#1329) https://github.com/vim/vim/commit/f58a8475e17bd566760fc7e2a17d35ddf4edacf2
* Vim-patch 8.0.0300 (#7258)KunMing Xie2017-09-11
| | | | | | | | | vim-patch:8.0.0300 Problem: Cannot stop diffing hidden buffers. (Daniel Hahler) Solution: When using :diffoff! make the whole list if diffed buffers empty. (closes vim/vim#736) https://github.com/vim/vim/commit/25ea0544587dd45088512fec9d7a685e35fea679
* vim-patch:8.0.0044ckelsel2017-08-16
| | | | | | | | Problem: In diff mode the cursor may end up below the last line, resulting in an ml_get error. Solution: Check the line to be valid. https://github.com/vim/vim/commit/025e3e0bafbc85cc4e365145af711edf99d0a90d
* bufhl: fix moveBjörn Linse2017-06-24
|
* *: Add comment to all C filesZyX2017-04-19
|
* diff: Silence -V519ZyX2017-04-16
| | | | Not exactly a false positive, but previous assignment is a part of the pattern “change global, run code which uses it, change global back”.
* *: Move some dictionary functions to typval.h and use char*ZyX2017-03-29
| | | | Also fixes buffer reusage in setmatches() and complete().
* vim-patch:7.4.2135lonerover2017-03-11
| | | | | | | Problem: Various tiny issues. Solution: Update comments, white space, etc. https://github.com/vim/vim/commit/89eaa4185efacab253b23a182c1c8a7bbf1096c9
* vim-patch:7.4.2279lonerover2017-02-09
| | | | | | | | Problem: Starting diff mode with the cursor in the last line might end up only showing one closed fold. (John Beckett) Solution: Scroll the window to show the same relative cursor position. https://github.com/vim/vim/commit/46328f9a1cc8047d1e05095bc9f531038c5a4028