patch 8.2.1852: map() returing zero for NULL list is unexpected
Problem: map() returing zero for NULL list is unexpected.
Solution: Return the empty list. (closes #7133)
diff --git a/src/list.c b/src/list.c
index 59c614f..62c571c 100644
--- a/src/list.c
+++ b/src/list.c
@@ -1961,6 +1961,9 @@
int save_did_emsg;
int idx = 0;
+ // Always return the first argument, also on failure.
+ copy_tv(&argvars[0], rettv);
+
if (argvars[0].v_type == VAR_BLOB)
{
if ((b = argvars[0].vval.v_blob) == NULL)
@@ -2110,8 +2113,6 @@
did_emsg |= save_did_emsg;
}
-
- copy_tv(&argvars[0], rettv);
}
/*