diff options
author | Felipe Oliveira Carvalho <felipekde@gmail.com> | 2014-12-11 12:42:52 -0300 |
---|---|---|
committer | Felipe Oliveira Carvalho <felipekde@gmail.com> | 2014-12-11 20:22:36 -0300 |
commit | 8ee5659d83383d857039f8fc58d7ebc21df27905 (patch) | |
tree | 548d178953fe620fd2edda4e746a0186ad222aed /src/nvim/garray.c | |
parent | b603404487e0daa101deacbe346aa2fc9ee255c7 (diff) | |
download | rneovim-8ee5659d83383d857039f8fc58d7ebc21df27905.tar.gz rneovim-8ee5659d83383d857039f8fc58d7ebc21df27905.tar.bz2 rneovim-8ee5659d83383d857039f8fc58d7ebc21df27905.zip |
GA_DEEP_FREE_PTR: deep free macro for garrays that store simple pointers
By "simple pointer" I mean a pointer that can be freed with a call to `free`
without leaking any member pointer.
This macro does exactly what `ga_clear_strings` does.
Diffstat (limited to 'src/nvim/garray.c')
-rw-r--r-- | src/nvim/garray.c | 5 |
1 files changed, 1 insertions, 4 deletions
diff --git a/src/nvim/garray.c b/src/nvim/garray.c index 08a38493bf..c4f8f66bfe 100644 --- a/src/nvim/garray.c +++ b/src/nvim/garray.c @@ -37,10 +37,7 @@ void ga_clear(garray_T *gap) /// @param gap void ga_clear_strings(garray_T *gap) { - for (int i = 0; i < gap->ga_len; ++i) { - free(((char_u **)(gap->ga_data))[i]); - } - ga_clear(gap); + GA_DEEP_CLEAR_PTR(gap); } /// Initialize a growing array. |