diff options
author | Justin M. Keyes <justinkz@gmail.com> | 2016-10-31 03:50:19 +0100 |
---|---|---|
committer | Justin M. Keyes <justinkz@gmail.com> | 2016-11-08 21:20:08 +0100 |
commit | c04ffe866d276d6a6bd9e9c6a8b0dbb71504db7c (patch) | |
tree | 0fca258fbfb83cb871a493916d9dd6e0ef1195c3 /src/nvim/syntax.c | |
parent | e8c0f909626094350be7ee7b524697804da38dc1 (diff) | |
download | rneovim-c04ffe866d276d6a6bd9e9c6a8b0dbb71504db7c.tar.gz rneovim-c04ffe866d276d6a6bd9e9c6a8b0dbb71504db7c.tar.bz2 rneovim-c04ffe866d276d6a6bd9e9c6a8b0dbb71504db7c.zip |
'inccommand': rework
- Eliminate/isolate static/global variables
- Remove special-case parameter from buflist_new()
- Remove special-case ECMD_RESERVED_BUFNR
- To determine when u_undo_and_forget() should be done, check
b_changedtick instead of a heuristic.
- use mb_string2cells() instead of strlen() to measure the :sub patterns
- call ml_close() before buf_clear_file(). Avoids leaks caught by ASan.
Original patch by:
Robin Elrharbi-Fleury (Robinhola)
Audrey Rayé (Adrey06)
Philémon Hullot (DesbyP)
Aymeric Collange (aym7)
Clément Guyomard (Clement0)
Diffstat (limited to 'src/nvim/syntax.c')
-rw-r--r-- | src/nvim/syntax.c | 13 |
1 files changed, 5 insertions, 8 deletions
diff --git a/src/nvim/syntax.c b/src/nvim/syntax.c index a1c6718b06..68d0e3da0f 100644 --- a/src/nvim/syntax.c +++ b/src/nvim/syntax.c @@ -7160,16 +7160,13 @@ int syn_namen2id(char_u *linep, int len) */ int syn_check_group(char_u *pp, int len) { - int id; - char_u *name; - - name = vim_strnsave(pp, len); - - id = syn_name2id(name); - if (id == 0) /* doesn't exist yet */ + char_u *name = vim_strnsave(pp, len); + int id = syn_name2id(name); + if (id == 0) { // doesn't exist yet id = syn_add_group(name); - else + } else { xfree(name); + } return id; } |