summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/eval.c6
-rw-r--r--src/version.c2
2 files changed, 6 insertions, 2 deletions
diff --git a/src/eval.c b/src/eval.c
index f0d38df5a..e54d50080 100644
--- a/src/eval.c
+++ b/src/eval.c
@@ -18539,12 +18539,14 @@ ex_function(eap)
if (!eap->skip)
{
- /* Check the name of the function. */
+ /* Check the name of the function. Unless it's a dictionary function
+ * (that we are overwriting). */
if (name != NULL)
arg = name;
else
arg = fudi.fd_newkey;
- if (arg != NULL)
+ if (arg != NULL && (fudi.fd_di == NULL
+ || fudi.fd_di->di_tv.v_type != VAR_FUNC))
{
if (*arg == K_SPECIAL)
j = 3;
diff --git a/src/version.c b/src/version.c
index f0bb45ae0..550137eb0 100644
--- a/src/version.c
+++ b/src/version.c
@@ -667,6 +667,8 @@ static char *(features[]) =
static int included_patches[] =
{ /* Add new patch number below this line */
/**/
+ 167,
+/**/
166,
/**/
165,