diff --git a/src/strings.c b/src/strings.c
index 9e2c331..e3be335 100644
--- a/src/strings.c
+++ b/src/strings.c
@@ -1743,8 +1743,10 @@
 
 
 /*
- *
  * "utf16idx()" function
+ *
+ * Converts a byte or character offset in a string to the corresponding UTF-16
+ * code unit offset.
  */
     void
 f_utf16idx(typval_T *argvars, typval_T *rettv)
@@ -1780,6 +1782,7 @@
 
     char_u	*p;
     int		len;
+    int		utf16idx = 0;
     for (p = str, len = 0; charidx ? idx >= 0 : p <= str + idx; len++)
     {
 	if (*p == NUL)
@@ -1791,6 +1794,7 @@
 		rettv->vval.v_number = len;
 	    return;
 	}
+	utf16idx = len;
 	int clen = ptr2len(p);
 	int c = (clen > 1) ? utf_ptr2char(p) : *p;
 	if (c > 0xFFFF)
@@ -1800,7 +1804,7 @@
 	    idx--;
     }
 
-    rettv->vval.v_number = len > 0 ? len - 1 : 0;
+    rettv->vval.v_number = utf16idx;
 }
 
 /*
diff --git a/src/testdir/test_functions.vim b/src/testdir/test_functions.vim
index d7e7f92..a17c19e 100644
--- a/src/testdir/test_functions.vim
+++ b/src/testdir/test_functions.vim
@@ -1518,14 +1518,14 @@
   " UTF-16 index of a string with four byte characters
   let str = 'a😊😊b'
   call assert_equal(0, utf16idx(str, 0))
-  call assert_equal(2, utf16idx(str, 1))
-  call assert_equal(2, utf16idx(str, 2))
-  call assert_equal(2, utf16idx(str, 3))
-  call assert_equal(2, utf16idx(str, 4))
-  call assert_equal(4, utf16idx(str, 5))
-  call assert_equal(4, utf16idx(str, 6))
-  call assert_equal(4, utf16idx(str, 7))
-  call assert_equal(4, utf16idx(str, 8))
+  call assert_equal(1, utf16idx(str, 1))
+  call assert_equal(1, utf16idx(str, 2))
+  call assert_equal(1, utf16idx(str, 3))
+  call assert_equal(1, utf16idx(str, 4))
+  call assert_equal(3, utf16idx(str, 5))
+  call assert_equal(3, utf16idx(str, 6))
+  call assert_equal(3, utf16idx(str, 7))
+  call assert_equal(3, utf16idx(str, 8))
   call assert_equal(5, utf16idx(str, 9))
   call assert_equal(6, utf16idx(str, 10))
   call assert_equal(-1, utf16idx(str, 11))
@@ -1621,8 +1621,8 @@
   " UTF-16 index of a string with four byte characters
   let str = "a😊😊b"
   call assert_equal(0, utf16idx(str, 0, v:false, v:true))
-  call assert_equal(2, utf16idx(str, 1, v:false, v:true))
-  call assert_equal(4, utf16idx(str, 2, v:false, v:true))
+  call assert_equal(1, utf16idx(str, 1, v:false, v:true))
+  call assert_equal(3, utf16idx(str, 2, v:false, v:true))
   call assert_equal(5, utf16idx(str, 3, v:false, v:true))
   call assert_equal(6, utf16idx(str, 4, v:false, v:true))
   call assert_equal(-1, utf16idx(str, 5, v:false, v:true))
diff --git a/src/version.c b/src/version.c
index 1235ac9..c753acd 100644
--- a/src/version.c
+++ b/src/version.c
@@ -696,6 +696,8 @@
 static int included_patches[] =
 {   /* Add new patch number below this line */
 /**/
+    1629,
+/**/
     1628,
 /**/
     1627,
