diff options
author | Justin M. Keyes <justinkz@gmail.com> | 2022-06-28 12:37:39 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2022-06-28 12:37:39 +0200 |
commit | 094086a713bc952bd017a1edb214abba20b50e10 (patch) | |
tree | db49efeac98b76749241af0786b7fa38ff49bd76 /src/nvim/sign.c | |
parent | ee6b21e8430ea810ba2e3e9163b941386a2e1d65 (diff) | |
parent | 89f75dcd1f779a93936c90c7a124c2983c018df0 (diff) | |
download | rneovim-094086a713bc952bd017a1edb214abba20b50e10.tar.gz rneovim-094086a713bc952bd017a1edb214abba20b50e10.tar.bz2 rneovim-094086a713bc952bd017a1edb214abba20b50e10.zip |
Merge #19060 memory leaks
Diffstat (limited to 'src/nvim/sign.c')
-rw-r--r-- | src/nvim/sign.c | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/src/nvim/sign.c b/src/nvim/sign.c index 24da650743..940cd1d274 100644 --- a/src/nvim/sign.c +++ b/src/nvim/sign.c @@ -1176,21 +1176,27 @@ static void sign_define_cmd(char_u *sign_name, char_u *cmdline) p = skiptowhite_esc(arg); if (STRNCMP(arg, "icon=", 5) == 0) { arg += 5; + XFREE_CLEAR(icon); icon = vim_strnsave(arg, (size_t)(p - arg)); } else if (STRNCMP(arg, "text=", 5) == 0) { arg += 5; + XFREE_CLEAR(text); text = vim_strnsave(arg, (size_t)(p - arg)); } else if (STRNCMP(arg, "linehl=", 7) == 0) { arg += 7; + XFREE_CLEAR(linehl); linehl = vim_strnsave(arg, (size_t)(p - arg)); } else if (STRNCMP(arg, "texthl=", 7) == 0) { arg += 7; + XFREE_CLEAR(texthl); texthl = vim_strnsave(arg, (size_t)(p - arg)); } else if (STRNCMP(arg, "culhl=", 6) == 0) { arg += 6; + XFREE_CLEAR(culhl); culhl = vim_strnsave(arg, (size_t)(p - arg)); } else if (STRNCMP(arg, "numhl=", 6) == 0) { arg += 6; + XFREE_CLEAR(numhl); numhl = vim_strnsave(arg, (size_t)(p - arg)); } else { semsg(_(e_invarg2), arg); |