summaryrefslogtreecommitdiff
path: root/src/if_mzsch.c
diff options
context:
space:
mode:
authorBram Moolenaar <Bram@vim.org>2016-08-01 15:40:54 +0200
committerBram Moolenaar <Bram@vim.org>2016-08-01 15:40:54 +0200
commit437bafe4c8a83ed71ee006eda7f54b65a90f0d4c (patch)
treedac9426b1bafe44f050bbb13c027de31117c089d /src/if_mzsch.c
parent580164481924ed8611eb79f0247a0eb1ca0b3b9a (diff)
downloadvim-437bafe4c8a83ed71ee006eda7f54b65a90f0d4c.zip
patch 7.4.2137
Problem: Using function() with a name will find another function when it is redefined. Solution: Add funcref(). Refer to lambda using a partial. Fix several reference counting issues.
Diffstat (limited to 'src/if_mzsch.c')
-rw-r--r--src/if_mzsch.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/src/if_mzsch.c b/src/if_mzsch.c
index daec6b0a8..7a462ad54 100644
--- a/src/if_mzsch.c
+++ b/src/if_mzsch.c
@@ -3134,7 +3134,7 @@ vim_to_mzscheme_impl(typval_T *vim_value, int depth, Scheme_Hash_Table *visited)
/* FIXME: func_ref() and func_unref() are needed. */
/* TODO: Support pt_dict and pt_argv. */
funcname = scheme_make_byte_string(
- (char *)vim_value->vval.v_partial->pt_name);
+ (char *)partial_name(vim_value->vval.v_partial));
MZ_GC_CHECK();
result = scheme_make_closed_prim_w_arity(vim_funcref, funcname,
(const char *)BYTE_STRING_VALUE(funcname), 0, -1);