aboutsummaryrefslogtreecommitdiff
path: root/src/nvim/regexp.c
Commit message (Collapse)AuthorAge
...
* vim-patch:8.2.2885: searching for \%'> does not match linewise end of lineJan Edmund Lazo2021-05-26
| | | | | | Problem: searching for \%'> does not match linewise end of line. (Tim Chase) Solution: Match end of line if column is MAXCOL. (closes vim/vim#8238) https://github.com/vim/vim/commit/872bee557e5f8ab0e4a523a6a845868a2801b17e
* vim-patch:8.2.2829: some comments are not correct or clearJan Edmund Lazo2021-05-06
| | | | | | Problem: Some comments are not correct or clear. Solution: Adjust the comments. Add test for cursor position. https://github.com/vim/vim/commit/df36514a6455342e178af693553ef9df9fcf8c83
* extmark: correct extmark_splice call with inccommandchentau2021-04-09
|
* vim-patch:8.2.1621: crash when using submatch(0, 1) in substitute()Jan Edmund Lazo2021-03-29
| | | | | | | | | | | | | | | Problem: Crash when using submatch(0, 1) in substitute(). Solution: Increment reference count. (closes vim/vim#6887) https://github.com/vim/vim/commit/8a0dcf43305586853f452a77fa295b0c8d54b463 N/A patches for version.c: vim-patch:8.2.2674: Motif: cancelling the font dialog resets the font Problem: Motif: cancelling the font dialog resets the font. Solution: When no font is selected to not change the font. (closes vim/vim#7825, closes vim/vim#8035) Fix compiler warnings. https://github.com/vim/vim/commit/9dbe701fe19597ad59c0e0c70a05927b587bea9f
* vim-patch:8.1.0989: various small code uglinessJan Edmund Lazo2021-03-29
| | | | | | | Problem: Various small code ugliness. Solution: Remove pointless NULL checks. Fix function calls. Fix typos. (Dominique Pelle, closes vim/vim#4060) https://github.com/vim/vim/commit/bdace838c67c1bd94e55e34270a8325933891466
* vim-patch:8.2.0928: many type casts are used for vim_strnsave()Jan Edmund Lazo2020-12-27
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: Many type casts are used for vim_strnsave(). Solution: Make the length argument size_t instead of int. (Ken Takata, closes vim/vim#5633) Remove some type casts. https://github.com/vim/vim/commit/df44a27b53586fccfc6a3aedc89061fdd9a515ff N/A patches for version.c: vim-patch:8.2.0315: build failure on HP-UX system Problem: Build failure on HP-UX system. Solution: Use LONG_LONG_MIN instead of LLONG_MIN. Add type casts for switch statement. (John Marriott) https://github.com/vim/vim/commit/c593bec4120f122e8a9129ec461968f1bd214435 vim-patch:8.2.1052: build failure with older compilers Problem: Build failure with older compilers. Solution: Move declaration to start of block. https://github.com/vim/vim/commit/7acde51832f383f9a6d2e740cd0420b433ea841a vim-patch:8.2.2229: build failure without the +eval feature Problem: build failure without the +eval feature. Solution: Add #ifdef. https://github.com/vim/vim/commit/39cb2dab18e85fc60f116a4543e433616872b690 vim-patch:8.2.2232: compiler error for falling through into next case Problem: Compiler error for falling through into next case. Solution: Move FALLTHROUGH below the #endif https://github.com/vim/vim/commit/9618a25b9c054f0ee4e267d2db96b6e7c113ed7a
* vim-patch:8.2.2181: valgrind warnings for using uninitialized valueJan Edmund Lazo2020-12-21
| | | | | | Problem: Valgrind warnings for using uninitialized value. Solution: Do not use "start" or "end" unless there is a match. https://github.com/vim/vim/commit/a3d10a508c404a32485adc86284725e0bdc5b602
* vim-patch:8.2.2121: internal error when using \ze before \zs in a patternSean Dewar2020-12-09
| | | | | | Problem: Internal error when using \ze before \zs in a pattern. Solution: Check the end is never before the start. (closes vim/vim#7442) https://github.com/vim/vim/commit/a7a691cc142439e266f4ceb1f208bb952b57aa71
* vim-patch:8.1.0809: too many #ifdefsJan Edmund Lazo2020-11-12
| | | | | | Problem: Too many #ifdefs. Solution: Graduate FEAT_MBYTE, part 3. https://github.com/vim/vim/commit/a12a161b8ce09d024ed71c2134149fa323f8ee8e
* vim-patch:8.1.1319: computing function length name in many placesJan Edmund Lazo2020-09-30
| | | | | | | | | | | Problem: Computing function length name in many places. Solution: compute name length in call_func(). https://github.com/vim/vim/commit/6ed8819822994512c160006bd1204aa11ae3c494 In call_func(), reassign "len" param to (int)STRLEN(funcname) instead of using vim_strsave() which runs strlen(). "len" param is checked for v:lua functions. call_func() states that strlen() is used if "len" is set to -1.
* vim-patch:8.1.0499: :2vimgrep causes an ml_get errorJan Edmund Lazo2020-09-13
| | | | | | Problem: :2vimgrep causes an ml_get error Solution: Pass tomatch pointer instead of value. (Yegappan Lakshmanan) https://github.com/vim/vim/commit/1c29943416207e21abbc790eaf563b36789170c2
* vim-patch:8.2.1633: some error messages are internal but do not use iemsg()Jan Edmund Lazo2020-09-07
| | | | | | | | | | | | | | | | | | | | Problem: Some error messages are internal but do not use iemsg(). Solution: Use iemsg(). (Dominique Pellé, closes vim/vim#6894) https://github.com/vim/vim/commit/e83cca291112ea66f49079975e102ee36a47a24e N/A patches for version.c: vim-patch:8.2.1625: compiler warning for use of fptr_T Problem: Compiler warning for use of fptr_T. Solution: Make the type less strict. https://github.com/vim/vim/commit/30d6413782c8206899cee109f521895a03c76441 vim-patch:8.2.1630: terminal test fails Problem: Terminal test fails. Solution: Correct argument to term_start(). Correct error number. https://github.com/vim/vim/commit/c98cdb3bc970f04f93b4c394b4ec94c2eb5546c3
* vim-patch:8.1.0862: no verbose version of character classesJan Edmund Lazo2020-08-02
| | | | | | | Problem: No verbose version of character classes. Solution: Add [:ident:], [:keyword:] and [:fname:]. (Ozaki Kiichi, closes vim/vim#1373) https://github.com/vim/vim/commit/221cd9f4dd866503777b2fffa721c1403716ad63
* vim-patch:8.1.1202: always get regexp debugging logs when building with -DDEBUGJan Edmund Lazo2020-08-02
| | | | | | Problem: Always get regexp debugging logs when building with -DDEBUG. Solution: By default do not create regexp debugging logs. (Ken Takata) https://github.com/vim/vim/commit/c2d09c9f2ce487a6971af9306e382d7b38805456
* vim-patch:8.1.0194: possibly use of NULL pointerJan Edmund Lazo2020-08-02
| | | | | | Problem: Possibly use of NULL pointer. (Coverity) Solution: Reset the re_in_use flag earlier. https://github.com/vim/vim/commit/414998023fbff15cce20ef01a54d0366370ad8b6
* vim-patch:8.1.0192: executing regexp recursively fails with a crashJan Edmund Lazo2020-08-02
| | | | | | Problem: Executing regexp recursively fails with a crash. Solution: Move global variables into "rex". https://github.com/vim/vim/commit/0270f38e1ae484c31a80c813a08691c47a207f1a
* Merge #11851 'eval.c: factor out eval/userfunc.c'Justin M. Keyes2020-04-26
|\ | | | | | | vim-patch:7.4.2058
| * rename: user_funcs -> userfuncJakub Łuczyński2020-02-13
| | | | | | | | Lets stick with vim for now
| * fix: includesJakub Łuczyński2020-02-13
| |
* | vim-patch:8.1.2282: crash when passing many arguments through a partialJan Edmund Lazo2020-04-13
| | | | | | | | | | | | | | Problem: Crash when passing many arguments through a partial. (Andy Massimino) Solution: Check the number of arguments. (closes vim/vim#5186) https://github.com/vim/vim/commit/4c054e9fb23027b55a09ee647a3a2c91936aeb1b
* | vim-patch:8.1.2280: crash when passing partial to substitute()Jan Edmund Lazo2020-04-13
|/ | | | | | Problem: Crash when passing partial to substitute(). Solution: Take extra arguments into account. (closes vim/vim#5186) https://github.com/vim/vim/commit/b0745b221d284e381f1bd4b591cd68ea54b6a51d
* vim-patch:8.2.0033: make_extmatch() OOM #11602Jan Edmund Lazo2019-12-24
| | | | | Problem: Crash when make_extmatch() runs out of memory. Solution: Check for NULL. (Dominique Pelle, closs vim/vim#5392) https://github.com/vim/vim/commit/7c77b3496710f1be3232cfdc7f6812347fbd914a
* lintJustin M. Keyes2019-09-13
|
* 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
* regexp: assert nonnull pointer for regnext()Jan Edmund Lazo2019-09-10
|
* PVS/V560: condition is always true #10624Ihor Antonov2019-07-28
| | | | | | | | * before changed line status variable is set to RA_FAIL in 2 places line 3816 and 3826, both lead to short-circuit of the loop, making comparing it to RA_FAIL useless close #10624
* vim-patch:8.1.0903: struct uses more bytes than neededJan Edmund Lazo2019-07-24
| | | | | | Problem: Struct uses more bytes than needed. Solution: Reorder members of regitem_S. (Dominique Pelle, closes vim/vim#3936) https://github.com/vim/vim/commit/beb7574d6b0eea1cae70aa2913a690da56de5307
* vim-patch:8.1.1720: crash with very long %[] patternJan Edmund Lazo2019-07-20
| | | | | | Problem: Crash with very long %[] pattern. (Reza Mirzazade farkhani) Solution: Check for reg_toolong. (closes vim/vim#4703) https://github.com/vim/vim/commit/2a5b52758bb327b89d22660cc28c157ec29782e5
* 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
* lintJan Edmund Lazo2019-04-23
|
* vim-patch:8.0.0647: syntax highlighting can make cause a freezeJan Edmund Lazo2019-04-23
| | | | | | Problem: Syntax highlighting can make cause a freeze. Solution: Apply 'redrawtime' to syntax highlighting, per window. https://github.com/vim/vim/commit/06f1ed2f78c5c03af95054fc3a8665df39dec362
* vim-patch:8.1.1025: checking NULL pointer after additionJan Edmund Lazo2019-03-21
| | | | | | Problem: Checking NULL pointer after addition. (Coverity) Solution: First check for NULL, then add the column. https://github.com/vim/vim/commit/64c8ed366de995a01ca1a072a6943ede0d7bb932
* Merge #9662 'vim-patch:8.0.{0643-0646}'Justin M. Keyes2019-03-08
|\
| * lint: fix coding styleBilly Su2019-03-08
| |
| * vim-patch:8.0.0646: the hlsearch test fails on fast systemsBilly Su2019-03-08
| | | | | | | | | | | | | | Problem: The hlsearch test fails on fast systems. Solution: Make the search pattern slower. Fix that the old regexp engine doesn't timeout properly. https://github.com/vim/vim/commit/0946326580e6f034fe2c88d041407ea0fde980ab
| * vim-patch:8.0.0645: no error for illegal back reference in NFA engineBilly Su2019-03-07
| | | | | | | | | | | | | | Problem: The new regexp engine does not give an error for using a back reference where it is not allowed. (Dominique Pelle) Solution: Check the back reference like the old engine. (closes vim/vim#1774) https://github.com/vim/vim/commit/1ef9bbe215e13a273e74fccaddd8fc5a42c76b6e
| * vim-patch:8.0.0643: when a pattern search is slow Vim becomes unusableBilly Su2019-03-07
|/ | | | | | | | | Problem: When 'hlsearch' is set and matching with the last search pattern is very slow, Vim becomes unusable. Cannot quit search by pressing CTRL-C. Solution: When the search times out set a flag and don't try again. Check for timeout and CTRL-C in NFA loop that adds states. https://github.com/vim/vim/commit/fbd0b0af6800f6ff89857863d6a07ea03f09ff6c
* vim-patch:8.1.0935: old regexp engine may use invalid buffer #9692Jan Edmund Lazo2019-03-07
| | | | | | Problem: Old regexp engine may use invalid buffer for 'iskeyword' or uninitialized buffer pointer. (Kuang-che Wu) Solution: Set rex.reg_buf when compiling the pattern. (closes vim/vim#3972) https://github.com/vim/vim/commit/8bfd9469cef536f171e6666f9d9217192e09d161
* vim-patch:8.1.0973: pattern with syntax error gives threee error messagesJustin M. Keyes2019-03-01
| | | | | | | | Problem: Pattern with syntax error gives threee error messages. (Kuang-che Wu) Solution: Remove outdated internal error. Don't fall back to other engine after an error. https://github.com/vim/vim/commit/cd62512c5595fa1f7a7f2c6ec1a90ea6bde3ad50
* vim-patch:8.1.0985: crash with large number in regexpJustin M. Keyes2019-02-28
| | | | | | Problem: Crash with large number in regexp. (Kuang-che Wu) Solution: Check for long becoming negative int. (closes #) https://github.com/vim/vim/commit/ab350f89f9646e07aefe16a32ba3ddb847496b4a
* vim-patch:8.1.0937: invalid memory access in search patternJan Edmund Lazo2019-02-17
| | | | | | | Problem: Invalid memory access in search pattern. (Kuang-che Wu) Solution: Check for incomplete collation element. (Dominique Pelle, closes vim/vim#3985) https://github.com/vim/vim/commit/f1b57ab2ab18032d19f64bff7d22f3adb3fe93f7
* vim-patch:8.1.0934: invalid memory access in search patternJan Edmund Lazo2019-02-17
| | | | | | Problem: Invalid memory access in search pattern. (Kuang-che Wu) Solution: Check for incomplete equivalence class. (closes vim/vim#3970) https://github.com/vim/vim/commit/985079c514e9ab85598b7bca019c77d3e42526f5
* PVS/V560: expression is always trueJustin M. Keyes2019-01-18
| | | | This macro serves as a sanity-check / documentation.
* vim-patch:8.1.0677: look-behind match may use the wrong line numberJan Edmund Lazo2019-01-05
| | | | | | | Problem: Look-behind match may use the wrong line number. (Dominique Pelle) Solution: Use the line number in regsave instead of the one in behind_pos, we may be looking at the previous line. (closes vim/vim#3749) https://github.com/vim/vim/commit/866f3558141aa68862aa2fedbb7747bf2365e838
* vim-patch:8.1.0098: segfault when pattern with \z() is very slow (#9283)Justin M. Keyes2018-11-29
| | | | | | | | Problem: Segfault when pattern with \z() is very slow. Solution: Check for NULL regprog. Add "nfa_fail" to test_override() to be able to test this. Fix that 'searchhl' resets called_emsg. https://github.com/vim/vim/commit/bcf9442307075bac40d44328c8bf7ea21857b138 closes #8788
* lintJan Edmund Lazo2018-09-21
|
* replace fallthrough comment with macroJan Edmund Lazo2018-09-21
| | | | Follow-up of vim-patch:8.0.1215
* vim-patch:8.0.1215: newer gcc warns for implicit fallthroughJan Edmund Lazo2018-09-20
| | | | | | Problem: Newer gcc warns for implicit fallthrough. Solution: Consistently use a FALLTHROUGH comment. (Christian Brabandt) https://github.com/vim/vim/commit/2f40d129bf45cd35976e4120336ae6d504f5a5dd
* lint: clean-up after parent commitsZviRackover2018-09-09
|
* Remove has_mbytes local to lines changed in parent commitZviRackover2018-09-09
|