summaryrefslogtreecommitdiff
path: root/src/spellfile.c
Commit message (Collapse)AuthorAgeFilesLines
* patch 8.2.1565: spellfile test sometimes failsv8.2.1565Bram Moolenaar2020-09-021-2/+1
| | | | | Problem: Spellfile test sometimes fails. Solution: Check running into the end of the file.
* patch 8.2.1564: a few remaining errors from ubsanv8.2.1564Bram Moolenaar2020-09-021-4/+8
| | | | | Problem: A few remaining errors from ubsan. Solution: Avoid the warnings. (Dominique Pellé, closes #6837)
* patch 8.2.1560: using NULL pointers in some codev8.2.1560Bram Moolenaar2020-09-011-1/+1
| | | | | Problem: Using NULL pointers in some code. (James McCoy) Solution: Avoid adding to a NULL pointer. Use byte as unsigned.
* patch 8.2.1521: reading past end of buffer when reading spellfilev8.2.1521Bram Moolenaar2020-08-241-7/+11
| | | | | | Problem: Reading past end of buffer when reading spellfile. (Yegappan Lakshmanan) Solution: Store the byte length and check for it.
* patch 8.2.1493: not enough test coverage for the spell file handlingv8.2.1493Bram Moolenaar2020-08-201-1/+1
| | | | | Problem: Not enough test coverage for the spell file handling. Solution: Add spell file tests. (Yegappan Lakshmanan, closes #6728)
* patch 8.2.1169: write NUL past allocated space using corrupted spell filev8.2.1169Bram Moolenaar2020-07-101-1/+2
| | | | | | Problem: Write NUL past allocated space using corrupted spell file. (Markus Vervier) Solution: Init "c" every time.
* patch 8.2.1089: Coverity warns for pointer computationv8.2.1089Bram Moolenaar2020-06-291-3/+2
| | | | | Problem: Coverity warns for pointer computation. Solution: Avoid computing a pointer to invalid memory.
* patch 8.2.0895: :mkspell output does not mention the tree typev8.2.0895Bram Moolenaar2020-06-031-45/+35
| | | | | | Problem: :mkspell output does not mention the tree type. Solution: Back out increasing the limits, it has no effect. Mention the tree being compressed. Only give a message once per second.
* patch 8.2.0894: :mkspell can take very long if the word count is highv8.2.0894Bram Moolenaar2020-06-031-18/+34
| | | | | | Problem: :mkspell can take very long if the word count is high. Solution: Use long to avoid negative numbers. Increase the limits by 20% if the compression did not have effect.
* patch 8.2.0559: clearing a struct is verbosev8.2.0559Bram Moolenaar2020-04-121-2/+2
| | | | | Problem: Clearing a struct is verbose. Solution: Define and use CLEAR_FIELD() and CLEAR_POINTER().
* patch 8.2.0500: using the same loop in many placesv8.2.0500Bram Moolenaar2020-04-021-11/+17
| | | | | Problem: Using the same loop in many places. Solution: Define more FOR_ALL macros. (Yegappan Lakshmanan, closes #5339)
* patch 8.2.0436: no warnings for incorrect printf argumentsv8.2.0436Bram Moolenaar2020-03-231-8/+8
| | | | | | Problem: No warnings for incorrect printf arguments. Solution: Fix attribute in declaration. Fix uncovered mistakes. (Dominique Pelle, closes #5834)
* patch 8.2.0098: exe stack length can be wrong without being detectedv8.2.0098Bram Moolenaar2020-01-071-0/+5
| | | | | Problem: Exe stack length can be wrong without being detected. Solution: Add a check when ABORT_ON_INTERNAL_ERROR is defined.
* patch 8.2.0097: crash with autocommand and spellfilev8.2.0097Bram Moolenaar2020-01-071-1/+4
| | | | | Problem: Crash with autocommand and spellfile. (Tim Pope) Solution: Do not pop exestack when not pushed. (closes #5450)
* patch 8.2.0056: execution stack is incomplete and inefficientv8.2.0056Bram Moolenaar2019-12-291-6/+2
| | | | | | Problem: Execution stack is incomplete and inefficient. Solution: Introduce a proper execution stack and use it instead of sourcing_name/sourcing_lnum. Create a string only when used.
* patch 8.1.2395: using old C style commentsv8.1.2395Bram Moolenaar2019-12-051-936/+935
| | | | | Problem: Using old C style comments. Solution: Use // comments where appropriate.
* patch 8.1.2268: spell file flag zero is not recognizedv8.1.2268Bram Moolenaar2019-11-071-0/+7
| | | | | | Problem: Spell file flag zero is not recognized. Solution: Use -1 as an error value, so that zero can be used as a valid flag number.
* patch 8.1.1838: there is :spellwrong and :spellgood but not :spellrarev8.1.1838Bram Moolenaar2019-08-111-9/+14
| | | | | Problem: There is :spellwrong and :spellgood but not :spellrare. Solution: Add :spellrare. (Martin Tournoij, closes #4291)
* patch 8.1.1414: alloc() returning "char_u *" causes a lot of type castsv8.1.1414Bram Moolenaar2019-05-281-4/+4
| | | | | | 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.
* patch 8.1.1386: unessesary type casts for lalloc()v8.1.1386Bram Moolenaar2019-05-241-6/+4
| | | | | Problem: Unessesary type casts for lalloc(). Solution: Remove type casts. Change lalloc(size, TRUE) to alloc(size).
* patch 8.1.1384: using "int" for alloc() often results in compiler warningsv8.1.1384Bram Moolenaar2019-05-241-2/+2
| | | | | | 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.
* patch 8.1.1371: cannot recover from a swap filev8.1.1371Bram Moolenaar2019-05-231-2/+2
| | | | | | | Problem: Cannot recover from a swap file. Solution: Do not expand environment variables in the swap file name. Do not check the extension when we already know a file is a swap file. (Ken Takata, closes 4415, closes #4369)
* patch 8.1.1306: Borland support is outdated and doesn't workv8.1.1306Bram Moolenaar2019-05-091-8/+1
| | | | | | Problem: Borland support is outdated and doesn't work. Solution: Remove Borland support, there are other (free) compilers available. (Thomas Dziedzic, Ken Takata, closes #4364)
* patch 8.1.0810: too many #ifdefsv8.1.0810Bram Moolenaar2019-01-241-94/+5
| | | | | Problem: Too many #ifdefs. Solution: Graduate FEAT_MBYTE, part 4.
* patch 8.1.0779: argument for message functions is inconsistentv8.1.0779Bram Moolenaar2019-01-191-13/+13
| | | | | Problem: Argument for message functions is inconsistent. Solution: Make first argument to msg() "char *".
* patch 8.1.0753: printf format not checked for semsg()v8.1.0753Bram Moolenaar2019-01-151-2/+2
| | | | | | Problem: printf format not checked for semsg(). Solution: Add GNUC attribute and fix reported problems. (Dominique Pelle, closes #3805)
* patch 8.1.0743: giving error messages is not flexiblev8.1.0743Bram Moolenaar2019-01-131-95/+95
| | | | | | | | 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.
* patch 8.1.0528: various typos in commentsv8.1.0528Bram Moolenaar2018-11-161-1/+1
| | | | | Problem: Various typos in comments. Solution: Fix the typos.
* patch 8.1.0443: unnecessary static function prototypesv8.1.0443Bram Moolenaar2018-09-301-12/+0
| | | | | Problem: Unnecessary static function prototypes. Solution: Remove unnecessary prototypes.
* patch 8.1.0078: "..." used inconsistently in messagesv8.1.0078Bram Moolenaar2018-06-191-5/+5
| | | | | Problem: "..." used inconsistently in messages. Solution: Drop the space before " ...".
* patch 8.0.1677: no compiler warning for wrong format in vim_snprintf()v8.0.1677Bram Moolenaar2018-04-081-1/+1
| | | | | Problem: No compiler warning for wrong format in vim_snprintf(). Solution: Add printf attribute for gcc. Fix reported problems.
* patch 8.0.1496: clearing a pointer takes two linesv8.0.1496Bram Moolenaar2018-02-101-2/+1
| | | | | | Problem: Clearing a pointer takes two lines. Solution: Add VIM_CLEAR() and replace vim_clear(). (Hirohito Higashi, closes #2629)
* patch 8.0.1490: number of spell regions is spread out through the codev8.0.1490Bram Moolenaar2018-02-101-9/+10
| | | | | Problem: Number of spell regions is spread out through the code. Solution: Define MAXREGIONS.
* patch 8.0.1225: no check for spell region being zerov8.0.1225Bram Moolenaar2017-10-271-1/+1
| | | | | Problem: No check for spell region being zero. (geeknik) Solution: Check for zero. (closes #2252)
* patch 8.0.0451: some macros are in lower casev8.0.0451Bram Moolenaar2017-03-121-7/+7
| | | | | | Problem: Some macros are in lower case. Solution: Make a few more macros upper case. Avoid lower case macros use an argument twice.
* patch 8.0.0376: size computations in spell file reading are offv8.0.0376Bram Moolenaar2017-02-261-2/+2
| | | | | Problem: Size computations in spell file reading are not exactly right. Solution: Make "len" a "long" and check with LONG_MAX.
* patch 8.0.0322: possible overflow with corrupted spell filev8.0.0322Bram Moolenaar2017-02-091-0/+3
| | | | | | Problem: Possible overflow with spell file where the tree length is corrupted. Solution: Check for an invalid length (suggested by shqking)
* patch 7.4.2293v7.4.2293Bram Moolenaar2016-08-291-1/+1
| | | | | Problem: Modelines in source code are inconsistant. Solution: Use the same line in most files. Add 'noet'. (Naruhiko Nishino)
* patch 7.4.2069v7.4.2069Bram Moolenaar2016-07-191-0/+6749
Problem: spell.c is too big. Solution: Split it in spell file handling and spell checking.