patch 8.0.0290: cursor positioning wrong if wide character wraps

Problem:    If a wide character doesn't fit at the end of the screen line, and
            the line doesn't fit on the screen, then the cursor position may
            be wrong. (anliting)
Solution:   Don't skip over wide character. (Christian Brabandt, closes #1408)
diff --git a/src/screen.c b/src/screen.c
index a392a92..18ae8b9 100644
--- a/src/screen.c
+++ b/src/screen.c
@@ -2903,7 +2903,7 @@
     int		endrow,
     int		nochange UNUSED)	/* not updating for changed text */
 {
-    int		col;			/* visual column on screen */
+    int		col = 0;		/* visual column on screen */
     unsigned	off;			/* offset in ScreenLines/ScreenAttrs */
     int		c = 0;			/* init for GCC */
     long	vcol = 0;		/* virtual column (for tabs) */
@@ -3429,7 +3429,11 @@
 #else
 	    --ptr;
 #endif
-	    n_skip = v - vcol;
+#ifdef FEAT_MBYTE
+           /* character fits on the screen, don't need to skip it */
+           if ((*mb_ptr2cells)(ptr) >= c && col == 0)
+#endif
+	       n_skip = v - vcol;
 	}
 
 	/*