vi: don't use common_bufsiz as read buffer, it can be too small
(found by Cristian Ionescu-Idbohrn <cristian.ionescu-idbohrn@axis.com>)

diff --git a/editors/vi.c b/editors/vi.c
index 345a945..9426ab8 100644
--- a/editors/vi.c
+++ b/editors/vi.c
@@ -184,6 +184,7 @@
 #if ENABLE_FEATURE_VI_COLON
 	char *initial_cmds[3];  // currently 2 entries, NULL terminated
 #endif
+	char readbuffer[MAX_LINELEN];
 };
 #define G (*ptr_to_globals)
 #define text           (G.text          )
@@ -200,6 +201,10 @@
 #define term_orig      (G.term_orig     )
 #define term_vi        (G.term_vi       )
 #define initial_cmds   (G.initial_cmds  )
+#define readbuffer     (G.readbuffer    )
+#define INIT_G() do { \
+	PTR_TO_GLOBALS = xzalloc(sizeof(G)); \
+} while (0)
 
 static int init_text_buffer(char *); // init from file or create new
 static void edit_file(char *);	// edit one file
@@ -321,7 +326,7 @@
 	my_pid = getpid();
 #endif
 
-	PTR_TO_GLOBALS = xzalloc(sizeof(G));
+	INIT_G();
 
 #if ENABLE_FEATURE_VI_CRASHME
 	srand((long) my_pid);
@@ -2142,8 +2147,6 @@
 	return safe_poll(pfd, 1, hund*10) > 0;
 }
 
-#define readbuffer bb_common_bufsiz1
-
 static int readed_for_parse;
 
 //----- IO Routines --------------------------------------------