diff --git a/src/screen.c b/src/screen.c
index aee18d8..695318b 100644
--- a/src/screen.c
+++ b/src/screen.c
@@ -4914,19 +4914,19 @@
 		    c2 = c3 = 0;
 		    s = p + len + 1;
 		    c1 = get_encoded_char_adv(&s);
-		    if (mb_char2cells(c1) > 1)
+		    if (char2cells(c1) > 1)
 			return e_invarg;
 		    if (tab[i].cp == &lcs_chars.tab2)
 		    {
 			if (*s == NUL)
 			    return e_invarg;
 			c2 = get_encoded_char_adv(&s);
-			if (mb_char2cells(c2) > 1)
+			if (char2cells(c2) > 1)
 			    return e_invarg;
 			if (!(*s == ',' || *s == NUL))
 			{
 			    c3 = get_encoded_char_adv(&s);
-			    if (mb_char2cells(c3) > 1)
+			    if (char2cells(c3) > 1)
 				return e_invarg;
 			}
 		    }
@@ -4968,7 +4968,7 @@
 			while (*s != NUL && *s != ',')
 			{
 			    c1 = get_encoded_char_adv(&s);
-			    if (mb_char2cells(c1) > 1)
+			    if (char2cells(c1) > 1)
 				return e_invarg;
 			    ++multispace_len;
 			}
diff --git a/src/testdir/test_display.vim b/src/testdir/test_display.vim
index 964220c..c14dc78 100644
--- a/src/testdir/test_display.vim
+++ b/src/testdir/test_display.vim
@@ -266,6 +266,8 @@
   call assert_fails(':set fillchars=eob:xy', 'E474:')
   call assert_fails(':set fillchars=eob:\255', 'E474:')
   call assert_fails(':set fillchars=eob:<ff>', 'E474:')
+  call assert_fails(":set fillchars=eob:\x01", 'E474:')
+  call assert_fails(':set fillchars=eob:\\x01', 'E474:')
   " default is ~
   new
   redraw
diff --git a/src/testdir/test_listchars.vim b/src/testdir/test_listchars.vim
index 9cf2152..90e3d6b 100644
--- a/src/testdir/test_listchars.vim
+++ b/src/testdir/test_listchars.vim
@@ -333,7 +333,7 @@
   call assert_fails('set listchars=space:xx', 'E474:')
   call assert_fails('set listchars=tab:xxxx', 'E474:')
 
-  " Has non-single width character
+  " Has double-width character
   call assert_fails('set listchars=space:·', 'E474:')
   call assert_fails('set listchars=tab:·x', 'E474:')
   call assert_fails('set listchars=tab:x·', 'E474:')
@@ -341,6 +341,20 @@
   call assert_fails('set listchars=multispace:·', 'E474:')
   call assert_fails('set listchars=multispace:xxx·', 'E474:')
 
+  " Has control character
+  call assert_fails("set listchars=space:\x01", 'E474:')
+  call assert_fails("set listchars=tab:\x01x", 'E474:')
+  call assert_fails("set listchars=tab:x\x01", 'E474:')
+  call assert_fails("set listchars=tab:xx\x01", 'E474:')
+  call assert_fails("set listchars=multispace:\x01", 'E474:')
+  call assert_fails("set listchars=multispace:xxx\x01", 'E474:')
+  call assert_fails('set listchars=space:\\x01', 'E474:')
+  call assert_fails('set listchars=tab:\\x01x', 'E474:')
+  call assert_fails('set listchars=tab:x\\x01', 'E474:')
+  call assert_fails('set listchars=tab:xx\\x01', 'E474:')
+  call assert_fails('set listchars=multispace:\\x01', 'E474:')
+  call assert_fails('set listchars=multispace:xxx\\x01', 'E474:')
+
   enew!
   set ambiwidth& listchars& ff&
 endfunction
diff --git a/src/version.c b/src/version.c
index 262a330..92612d5 100644
--- a/src/version.c
+++ b/src/version.c
@@ -750,6 +750,8 @@
 static int included_patches[] =
 {   /* Add new patch number below this line */
 /**/
+    3846,
+/**/
     3845,
 /**/
     3844,
