comparison src/channel.c @ 21409:2c40e60017a8 v8.2.1255

patch 8.2.1255: cannot use a lambda with quickfix functions Commit: https://github.com/vim/vim/commit/d43906d2e5969288f239df851f5ad7b1dc2c7251 Author: Bram Moolenaar <Bram@vim.org> Date: Mon Jul 20 21:31:32 2020 +0200 patch 8.2.1255: cannot use a lambda with quickfix functions Problem: Cannot use a lambda with quickfix functions. Solution: Add support for lambda. (Yegappan Lakshmanan, closes https://github.com/vim/vim/issues/6499)
author Bram Moolenaar <Bram@vim.org>
date Mon, 20 Jul 2020 21:45:04 +0200
parents d9a2e5dcfd9f
children 727820154b1a
comparison
equal deleted inserted replaced
21408:233bc1a5e828 21409:2c40e60017a8
1099 #endif 1099 #endif
1100 1100
1101 return channel; 1101 return channel;
1102 } 1102 }
1103 1103
1104 /*
1105 * Copy callback from "src" to "dest", incrementing the refcounts.
1106 */
1107 static void
1108 copy_callback(callback_T *dest, callback_T *src)
1109 {
1110 dest->cb_partial = src->cb_partial;
1111 if (dest->cb_partial != NULL)
1112 {
1113 dest->cb_name = src->cb_name;
1114 dest->cb_free_name = FALSE;
1115 ++dest->cb_partial->pt_refcount;
1116 }
1117 else
1118 {
1119 dest->cb_name = vim_strsave(src->cb_name);
1120 dest->cb_free_name = TRUE;
1121 func_ref(src->cb_name);
1122 }
1123 }
1124
1125 static void 1104 static void
1126 free_set_callback(callback_T *cbp, callback_T *callback) 1105 free_set_callback(callback_T *cbp, callback_T *callback)
1127 { 1106 {
1128 free_callback(cbp); 1107 free_callback(cbp);
1129 1108