comparison src/channel.c @ 9529:581d5131629f v7.4.2045

commit https://github.com/vim/vim/commit/5ef2e762844e0eb1f5b213bd58e6bc38bdb69dac Author: Bram Moolenaar <Bram@vim.org> Date: Fri Jul 15 21:29:35 2016 +0200 patch 7.4.2045 Problem: Memory leak when using a function callback. Solution: Don't save the function name when it's in the partial.
author Christian Brabandt <cb@256bit.org>
date Fri, 15 Jul 2016 21:30:07 +0200
parents 404de131cff9
children 172131507c85
comparison
equal deleted inserted replaced
9528:f4a706d113fa 9529:581d5131629f
1120 char_u *callback, 1120 char_u *callback,
1121 partial_T *partial) 1121 partial_T *partial)
1122 { 1122 {
1123 free_callback(*cbp, *pp); 1123 free_callback(*cbp, *pp);
1124 if (callback != NULL && *callback != NUL) 1124 if (callback != NULL && *callback != NUL)
1125 *cbp = vim_strsave(callback); 1125 {
1126 if (partial != NULL)
1127 *cbp = partial->pt_name;
1128 else
1129 *cbp = vim_strsave(callback);
1130 }
1126 else 1131 else
1127 *cbp = NULL; 1132 *cbp = NULL;
1128 *pp = partial; 1133 *pp = partial;
1129 if (*pp != NULL) 1134 if (*pp != NULL)
1130 ++(*pp)->pt_refcount; 1135 ++(*pp)->pt_refcount;