Bram Moolenaar
47ed553fd5
patch 8.1.1827: allocating more memory than needed for extended structs
...
Problem: Allocating more memory than needed for extended structs.
Solution: Use offsetof() instead of sizeof(). (Dominique Pelle,
closes #4786 )
2019-08-08 20:49:14 +02:00
Bram Moolenaar
c6538bcc1c
patch 8.1.1800: function call functions have too many arguments
...
Problem: Function call functions have too many arguments.
Solution: Pass values in a funcexe_T struct.
2019-08-03 18:17:11 +02:00
Bram Moolenaar
2a5b52758b
patch 8.1.1720: crash with very long %[] pattern
...
Problem: Crash with very long %[] pattern. (Reza Mirzazade farkhani)
Solution: Check for reg_toolong. (closes #4703 )
2019-07-20 18:56:06 +02:00
Bram Moolenaar
c799fe206e
patch 8.1.1414: alloc() returning "char_u *" causes a lot of type casts
...
Problem: Alloc() returning "char_u *" causes a lot of type casts.
Solution: Have it return "void *". (Mike Williams) Define ALLOC_ONE() to
check the simple allocations.
2019-05-28 23:08:19 +02:00
Bram Moolenaar
18a4ba29ae
patch 8.1.1386: unessesary type casts for lalloc()
...
Problem: Unessesary type casts for lalloc().
Solution: Remove type casts. Change lalloc(size, TRUE) to alloc(size).
2019-05-24 19:39:03 +02:00
Bram Moolenaar
964b3746b9
patch 8.1.1384: using "int" for alloc() often results in compiler warnings
...
Problem: Using "int" for alloc() often results in compiler warnings.
Solution: Use "size_t" and remove type casts. Remove alloc_check(), Vim
only works with 32 bit ints anyway.
2019-05-24 18:54:09 +02:00
Bram Moolenaar
6ed8819822
patch 8.1.1319: computing function length name in many places
...
Problem: Computing function length name in many places.
Solution: compute name length in call_func().
2019-05-11 18:37:44 +02:00
Bram Moolenaar
c2d09c9f2c
patch 8.1.1202: always get regexp debugging logs when building with -DDEBUG
...
Problem: Always get regexp debugging logs when building with -DDEBUG.
Solution: By default do not create regexp debugging logs. (Ken Takata)
2019-04-25 20:07:51 +02:00
Bram Moolenaar
2c519cf3bf
patch 8.1.1032: warnings from clang static analyzer
...
Problem: Warnings from clang static analyzer. (Yegappan Lakshmanan)
Solution: Fix relevant warnings.
2019-03-21 21:45:34 +01:00
Bram Moolenaar
64c8ed366d
patch 8.1.1025: checking NULL pointer after addition
...
Problem: Checking NULL pointer after addition. (Coverity)
Solution: First check for NULL, then add the column.
2019-03-20 21:18:34 +01:00
Bram Moolenaar
bdace838c6
patch 8.1.0989: various small code ugliness
...
Problem: Various small code ugliness.
Solution: Remove pointless NULL checks. Fix function calls. Fix typos.
(Dominique Pelle, closes #4060 )
2019-03-02 10:13:42 +01:00
Bram Moolenaar
ab350f89f9
patch 8.1.0985: crash with large number in regexp
...
Problem: Crash with large number in regexp. (Kuang-che Wu)
Solution: Check for long becoming negative int. (closes #)
2019-02-28 06:25:00 +01:00
Bram Moolenaar
cd62512c55
patch 8.1.0973: pattern with syntax error gives threee error messages
...
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.
2019-02-22 17:29:43 +01:00
Bram Moolenaar
f1b57ab2ab
patch 8.1.0937: invalid memory access in search pattern
...
Problem: Invalid memory access in search pattern. (Kuang-che Wu)
Solution: Check for incomplete collation element. (Dominique Pelle,
closes #3985 )
2019-02-17 13:53:34 +01:00
Bram Moolenaar
8bfd9469ce
patch 8.1.0935: old regexp engine may use invalid buffer
...
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 #3972 )
2019-02-16 18:07:57 +01:00
Bram Moolenaar
985079c514
patch 8.1.0934: invalid memory access in search pattern
...
Problem: Invalid memory access in search pattern. (Kuang-che Wu)
Solution: Check for incomplete equivalence class. (closes #3970 )
2019-02-16 17:07:47 +01:00
Bram Moolenaar
beb7574d6b
patch 8.1.0903: struct uses more bytes than needed
...
Problem: Struct uses more bytes than needed.
Solution: Reorder members of regitem_S. (Dominique Pelle, closes #3936 )
2019-02-12 22:33:00 +01:00
Bram Moolenaar
221cd9f4dd
patch 8.1.0862: no verbose version of character classes
...
Problem: No verbose version of character classes.
Solution: Add [:ident:], [:keyword:] and [:fname:]. (Ozaki Kiichi,
closes #1373 )
2019-01-31 15:34:40 +01:00
Bram Moolenaar
a12a161b8c
patch 8.1.0809: too many #ifdefs
...
Problem: Too many #ifdefs.
Solution: Graduate FEAT_MBYTE, part 3.
2019-01-24 16:39:02 +01:00
Bram Moolenaar
113e10721f
patch 8.1.0785: depending on the configuration some functions are unused
...
Problem: Depending on the configuration some functions are unused.
Solution: Add more #ifdefs, remove unused functions. (Dominique Pelle,
closes #3822 )
2019-01-20 15:30:40 +01:00
Bram Moolenaar
32526b3c18
patch 8.1.0779: argument for message functions is inconsistent
...
Problem: Argument for message functions is inconsistent.
Solution: Make first argument to msg() "char *".
2019-01-19 17:43:09 +01:00
Bram Moolenaar
1be45b2ea7
patch 8.1.0748: using sprintf() instead of semsg()
...
Problem: Using sprintf() instead of semsg().
Solution: Use semsg(). Fix bug with E888. (Ozaki Kiichi, closes #3801 )
2019-01-14 22:46:15 +01:00
Bram Moolenaar
f9e3e09fdc
patch 8.1.0743: giving error messages is not flexible
...
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
#3302 ) Also make emsg() accept a "char *" argument. Get rid of
an enormous number of type casts.
2019-01-13 23:38:42 +01:00
Bram Moolenaar
866f355814
patch 8.1.0677: look-behind match may use the wrong line number
...
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 #3749 )
2019-01-01 22:19:08 +01:00
Bram Moolenaar
a8bfa1727a
patch 8.1.0661: clipboard regexp might be used recursively
...
Problem: Clipboard regexp might be used recursively.
Solution: Check for recursive use and bail out.
2018-12-29 22:28:46 +01:00
Bram Moolenaar
d155d7a851
patch 8.1.0615: get_tv function names are not consistent
...
Problem: Get_tv function names are not consistent.
Solution: Rename to tv_get.
2018-12-21 16:04:21 +01:00
Bram Moolenaar
6dff58f15c
patch 8.1.0443: unnecessary static function prototypes
...
Problem: Unnecessary static function prototypes.
Solution: Remove unnecessary prototypes.
2018-09-30 21:43:26 +02:00
Bram Moolenaar
414998023f
patch 8.1.0194: possibly use of NULL pointer
...
Problem: Possibly use of NULL pointer. (Coverity)
Solution: Reset the re_in_use flag earlier.
2018-07-18 06:02:09 +02:00
Bram Moolenaar
0270f38e1a
patch 8.1.0192: executing regexp recursively fails with a crash
...
Problem: Executing regexp recursively fails with a crash.
Solution: Move global variables into "rex".
2018-07-17 05:43:58 +02:00
Bram Moolenaar
1f8c469fe2
patch 8.1.0102: cannot build without syntax highlighting
...
Problem: Cannot build without syntax highlighting.
Solution: Add #ifdef around using reg_do_extmatch.
2018-06-23 15:09:10 +02:00
Bram Moolenaar
bcf9442307
patch 8.1.0098: segfault when pattern with \z() is very slow
...
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.
2018-06-23 14:21:42 +02:00
Bram Moolenaar
bc197195b0
patch 8.0.1517: invalid memory acces with pattern using look-behind match
...
Problem: Invalid memory acces with pattern using look-behind match.
(Dominique Pelle)
Solution: Get a pointer to the right line.
2018-02-13 16:35:06 +01:00
Bram Moolenaar
d23a823669
patch 8.0.1496: clearing a pointer takes two lines
...
Problem: Clearing a pointer takes two lines.
Solution: Add VIM_CLEAR() and replace vim_clear(). (Hirohito Higashi,
closes #2629 )
2018-02-10 18:45:26 +01:00
Bram Moolenaar
4c22a91d20
patch 8.0.1254: undefined left shift in gethexchrs()
...
Problem: Undefined left shift in gethexchrs(). (geeknik)
Solution: Use unsigned long. (idea by Christian Brabandt, closes #2255 )
2017-11-02 22:29:38 +01:00
Bram Moolenaar
2f40d129bf
patch 8.0.1215: newer gcc warns for implicit fallthrough
...
Problem: Newer gcc warns for implicit fallthrough.
Solution: Consistently use a FALLTHROUGH comment. (Christian Brabandt)
2017-10-24 21:49:36 +02:00
Bram Moolenaar
06f1ed2f78
patch 8.0.0647: syntax highlighting can make cause a freeze
...
Problem: Syntax highlighting can make cause a freeze.
Solution: Apply 'redrawtime' to syntax highlighting, per window.
2017-06-18 22:41:03 +02:00
Bram Moolenaar
0946326580
patch 8.0.0646: the hlsearch test fails on fast systems
...
Problem: The hlsearch test fails on fast systems.
Solution: Make the search pattern slower. Fix that the old regexp engine
doesn't timeout properly.
2017-06-17 20:55:06 +02:00
Bram Moolenaar
1ef9bbe215
patch 8.0.0645: no error for illegal back reference in NFA engine
...
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 #1774 )
2017-06-17 20:08:20 +02:00
Bram Moolenaar
fbd0b0af68
patch 8.0.0643: when a pattern search is slow Vim becomes unusable
...
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.
2017-06-17 18:44:21 +02:00
Bram Moolenaar
6c95fbc9ae
patch 8.0.0624: warning for unused variable in tiny build
...
Problem: Warning for unused variable in tiny build. (Tony Mechelynck)
Solution: Add an #ifdef.
2017-06-05 17:53:37 +02:00
Bram Moolenaar
966e58e413
patch 8.0.0623: error for invalid regexp is not very informative
...
Problem: The message "Invalid range" is used for multiple errors.
Solution: Add two more specific error messages. (Itchyny, Ken Hamada)
2017-06-05 16:54:08 +02:00
Bram Moolenaar
ace95989ed
patch 8.0.0520: using a function pointer while the function is known
...
Problem: Using a function pointer instead of the actual function, which we
know.
Solution: Change mb_ functions to utf_ functions when already checked for
Unicode. (Dominique Pelle, closes #1582 )
2017-03-29 17:30:27 +02:00
Bram Moolenaar
0c078fc7db
patch 8.0.0519: character classes are not well tested
...
Problem: Character classes are not well tested. They can differ between
platforms.
Solution: Add tests. In the documentation make clear which classes depend
on what library function. Only use :cntrl: and :graph: for ASCII.
(Kazunobu Kuriyama, Dominique Pelle, closes #1560 )
Update the documentation.
2017-03-29 15:31:20 +02:00
Bram Moolenaar
1c46544412
patch 8.0.0452: some macros are in lower case
...
Problem: Some macros are in lower case.
Solution: Make a few more macros upper case.
2017-03-12 20:10:05 +01:00
Bram Moolenaar
91acfffc1e
patch 8.0.0451: some macros are in lower case
...
Problem: Some macros are in lower case.
Solution: Make a few more macros upper case. Avoid lower case macros use an
argument twice.
2017-03-12 19:22:36 +01:00
Bram Moolenaar
b5aedf3e22
patch 8.0.0448: some macros are in lower case
...
Problem: Some macros are in lower case, which can be confusing.
Solution: Make a few lower case macros upper case.
2017-03-12 18:23:53 +01:00
Bram Moolenaar
95f096030e
patch 8.0.0074
...
Problem: Cannot make Vim fail on an internal error.
Solution: Add IEMSG() and IEMSG2(). (Domenique Pelle) Avoid reporting an
internal error without mentioning where.
2016-11-10 20:01:45 +01:00
Bram Moolenaar
6100d02aab
patch 8.0.0020
...
Problem: The regexp engines are not reentrant.
Solution: Add regexec_T and save/restore the state when needed.
2016-10-02 16:51:57 +02:00
Bram Moolenaar
cbeab96f87
patch 7.4.2363
...
Problem: Superfluous function prototypes.
Solution: Remove them.
2016-09-11 15:08:56 +02:00
Bram Moolenaar
edf3f97ae2
patch 7.4.2293
...
Problem: Modelines in source code are inconsistant.
Solution: Use the same line in most files. Add 'noet'. (Naruhiko Nishino)
2016-08-29 22:49:24 +02:00