changeset 12212:3ed8bcc9a013 v8.0.0986

patch 8.0.0986: terminal feature always requires multi-byte feature commit https://github.com/vim/vim/commit/ec0e07a32484ab70f1c7668294c3d8d67f8aca82 Author: Bram Moolenaar <Bram@vim.org> Date: Tue Aug 22 22:21:37 2017 +0200 patch 8.0.0986: terminal feature always requires multi-byte feature Problem: Terminal feature always requires multi-byte feature. Solution: Remove #ifdef FEAT_MBYTE, disable terminal without multi-byte.
author Christian Brabandt <cb@256bit.org>
date Tue, 22 Aug 2017 22:30:05 +0200
parents 7a4fb06f700b
children dca6adb81733
files src/feature.h src/terminal.c src/version.c
diffstat 3 files changed, 7 insertions(+), 10 deletions(-) [+]
line wrap: on
line diff
--- a/src/feature.h
+++ b/src/feature.h
@@ -1269,8 +1269,10 @@
 
 /*
  * +terminal		":terminal" command.  Runs a terminal in a window.
+ *			requires +channel and +multibyte
  */
-#if !defined(FEAT_JOB_CHANNEL) && defined(FEAT_TERMINAL)
+#if defined(FEAT_TERMINAL) && \
+	!(defined(FEAT_JOB_CHANNEL) && defined(FEAT_MBYTE))
 # undef FEAT_TERMINAL
 #endif
 #if defined(FEAT_TERMINAL) && !defined(CURSOR_SHAPE)
--- a/src/terminal.c
+++ b/src/terminal.c
@@ -63,7 +63,6 @@
  *   mouse in the Terminal window for copy/paste.
  * - when 'encoding' is not utf-8, or the job is using another encoding, setup
  *   conversions.
- * - update ":help function-list" for terminal functions.
  * - In the GUI use a terminal emulator for :!cmd.
  * - Copy text in the vterm to the Vim buffer once in a while, so that
  *   completion works.
@@ -2103,14 +2102,11 @@ term_update_window(win_T *wp)
 		if (c == NUL)
 		{
 		    ScreenLines[off] = ' ';
-#if defined(FEAT_MBYTE)
 		    if (enc_utf8)
 			ScreenLinesUC[off] = NUL;
-#endif
 		}
 		else
 		{
-#if defined(FEAT_MBYTE)
 		    if (enc_utf8)
 		    {
 			if (c >= 0x80)
@@ -2124,7 +2120,7 @@ term_update_window(win_T *wp)
 			    ScreenLinesUC[off] = NUL;
 			}
 		    }
-# ifdef WIN3264
+#ifdef WIN3264
 		    else if (has_mbyte && c >= 0x80)
 		    {
 			char_u	mb[MB_MAXBYTES+1];
@@ -2140,9 +2136,8 @@ term_update_window(win_T *wp)
 			else
 			    ScreenLines[off] = c;
 		    }
-# endif
+#endif
 		    else
-#endif
 			ScreenLines[off] = c;
 		}
 		ScreenAttrs[off] = cell2attr(cell.attrs, cell.fg, cell.bg);
@@ -2151,11 +2146,9 @@ term_update_window(win_T *wp)
 		++off;
 		if (cell.width == 2)
 		{
-#if defined(FEAT_MBYTE)
 		    if (enc_utf8)
 			ScreenLinesUC[off] = NUL;
 		    else if (!has_mbyte)
-#endif
 			ScreenLines[off] = NUL;
 		    ++pos.col;
 		    ++off;
--- a/src/version.c
+++ b/src/version.c
@@ -770,6 +770,8 @@ static char *(features[]) =
 static int included_patches[] =
 {   /* Add new patch number below this line */
 /**/
+    986,
+/**/
     985,
 /**/
     984,