updated for version 7.2-258
diff --git a/src/ui.c b/src/ui.c
index aa8a8ac..df8008c 100644
--- a/src/ui.c
+++ b/src/ui.c
@@ -3055,18 +3055,17 @@
     int		vcol;
 {
     /* try to advance to the specified column */
-    int		col = 0;
     int		count = 0;
     char_u	*ptr;
+    char_u	*start;
 
-    ptr = ml_get_buf(wp->w_buffer, lnum, FALSE);
+    start = ptr = ml_get_buf(wp->w_buffer, lnum, FALSE);
     while (count <= vcol && *ptr != NUL)
     {
-	++col;
 	count += win_lbr_chartabsize(wp, ptr, count, NULL);
 	mb_ptr_adv(ptr);
     }
-    return col;
+    return (int)(ptr - start);
 }
 #endif
 
diff --git a/src/version.c b/src/version.c
index be50d62..654b350 100644
--- a/src/version.c
+++ b/src/version.c
@@ -677,6 +677,8 @@
 static int included_patches[] =
 {   /* Add new patch number below this line */
 /**/
+    258,
+/**/
     257,
 /**/
     256,