updated for version 7.4.541
Problem:    Crash when doing a range assign.
Solution:   Check for NULL poiter. (Yukihiro Nakadaira)
diff --git a/src/eval.c b/src/eval.c
index 840e1e8..5c584de 100644
--- a/src/eval.c
+++ b/src/eval.c
@@ -2951,7 +2951,7 @@
 	/*
 	 * Check whether any of the list items is locked
 	 */
-	for (ri = rettv->vval.v_list->lv_first; ri != NULL; )
+	for (ri = rettv->vval.v_list->lv_first; ri != NULL && ll_li != NULL; )
 	{
 	    if (tv_check_lock(ll_li->li_tv.v_lock, lp->ll_name))
 		return;
diff --git a/src/testdir/test55.in b/src/testdir/test55.in
index 140cb7c..c4e82d4 100644
--- a/src/testdir/test55.in
+++ b/src/testdir/test55.in
Binary files differ
diff --git a/src/testdir/test55.ok b/src/testdir/test55.ok
index e8560de..ba029b2 100644
--- a/src/testdir/test55.ok
+++ b/src/testdir/test55.ok
@@ -129,6 +129,7 @@
 {'a': {'b': 'B'}}
 Vim(call):E737: a
 {'a': {'b': 'B'}}
+[1, 2]
 Vim(foldopen):E490:
 
 
diff --git a/src/version.c b/src/version.c
index 57b5d76..451b837 100644
--- a/src/version.c
+++ b/src/version.c
@@ -742,6 +742,8 @@
 static int included_patches[] =
 {   /* Add new patch number below this line */
 /**/
+    541,
+/**/
     540,
 /**/
     539,