updated for version 7.4.315
Problem:    Fixes for computation of topline not tested.
Solution:   Add test. (Hirohito Higashi)
diff --git a/src/testdir/Make_amiga.mak b/src/testdir/Make_amiga.mak
index c8a529e..7d7e19a 100644
--- a/src/testdir/Make_amiga.mak
+++ b/src/testdir/Make_amiga.mak
@@ -35,7 +35,7 @@
 		test89.out test90.out test91.out test92.out test93.out \
 		test94.out test95.out test96.out test97.out test98.out \
 		test99.out test100.out test101.out test102.out test103.out \
-		test104.out test105.out test106.out \
+		test104.out test105.out test106.out test107.out \
 		test_autoformat_join.out \
 		test_eval.out \
 		test_options.out
@@ -161,6 +161,7 @@
 test104.out: test104.in
 test105.out: test105.in
 test106.out: test106.in
+test107.out: test107.in
 test_autoformat_join.out: test_autoformat_join.in
 test_eval.out: test_eval.in
 test_options.out: test_options.in
diff --git a/src/testdir/Make_dos.mak b/src/testdir/Make_dos.mak
index 4efaeb4..83a8ff5 100644
--- a/src/testdir/Make_dos.mak
+++ b/src/testdir/Make_dos.mak
@@ -34,7 +34,7 @@
 		test89.out test90.out test91.out test92.out test93.out \
 		test94.out test95.out test96.out test98.out test99.out \
 		test100.out test101.out test102.out test103.out test104.out \
-		test105.out test106.out \
+		test105.out test106.out  test107.out\
 		test_autoformat_join.out \
 		test_eval.out \
 		test_options.out
diff --git a/src/testdir/Make_ming.mak b/src/testdir/Make_ming.mak
index f589f20..b6293c0 100644
--- a/src/testdir/Make_ming.mak
+++ b/src/testdir/Make_ming.mak
@@ -54,7 +54,7 @@
 		test89.out test90.out test91.out test92.out test93.out \
 		test94.out test95.out test96.out test98.out test99.out \
 		test100.out test101.out test102.out test103.out test104.out \
-		test105.out test106.out \
+		test105.out test106.out test107.out \
 		test_autoformat_join.out \
 		test_eval.out \
 		test_options.out
diff --git a/src/testdir/Make_os2.mak b/src/testdir/Make_os2.mak
index 4406f7d..59c7739 100644
--- a/src/testdir/Make_os2.mak
+++ b/src/testdir/Make_os2.mak
@@ -36,7 +36,7 @@
 		test89.out test90.out test91.out test92.out test93.out \
 		test94.out test95.out test96.out test98.out test99.out \
 		test100.out test101.out test102.out test103.out test104.out \
-		test105.out test106.out \
+		test105.out test106.out test107.out \
 		test_autoformat_join.out \
 		test_eval.out \
 		test_options.out
diff --git a/src/testdir/Make_vms.mms b/src/testdir/Make_vms.mms
index af839e8..6cc122f 100644
--- a/src/testdir/Make_vms.mms
+++ b/src/testdir/Make_vms.mms
@@ -4,7 +4,7 @@
 # Authors:	Zoltan Arpadffy, <arpadffy@polarhome.com>
 #		Sandor Kopanyi,  <sandor.kopanyi@mailbox.hu>
 #
-# Last change:  2014 Mar 12
+# Last change:  2014 May 28
 #
 # This has been tested on VMS 6.2 to 8.3 on DEC Alpha, VAX and IA64.
 # Edit the lines in the Configuration section below to select.
@@ -95,7 +95,7 @@
 	 test90.out test91.out test92.out test93.out test94.out \
 	 test95.out test96.out test98.out test99.out \
 	 test100.out test101.out test103.out test104.out \
-	 test105.out test106.out \
+	 test105.out test106.out test107.out \
 	 test_autoformat_join.out \
 	 test_eval.out \
 	 test_options.out
diff --git a/src/testdir/Makefile b/src/testdir/Makefile
index 8ae35b9..c0db6d9 100644
--- a/src/testdir/Makefile
+++ b/src/testdir/Makefile
@@ -32,7 +32,7 @@
 		test89.out test90.out test91.out test92.out test93.out \
 		test94.out test95.out test96.out test97.out test98.out \
 		test99.out test100.out test101.out test102.out test103.out \
-		test104.out test105.out test106.out \
+		test104.out test105.out test106.out test107.out \
 		test_autoformat_join.out \
 		test_eval.out \
 		test_options.out
diff --git a/src/testdir/test107.in b/src/testdir/test107.in
new file mode 100644
index 0000000..9143380
--- /dev/null
+++ b/src/testdir/test107.in
@@ -0,0 +1,38 @@
+Tests for adjusting window and contents     vim: set ft=vim :
+
+STARTTEST
+:so small.vim
+:new
+:call setline(1, range(1,256))
+:let r=[]
+:func! GetScreenStr(row)
+:   let str = ""
+:   for c in range(1,3)
+:       let str .= nr2char(screenchar(a:row, c))
+:   endfor
+:   return str
+:endfunc
+:
+:exe ":norm! \<C-W>t\<C-W>=1Gzt\<C-W>w\<C-W>+"
+:let s3=GetScreenStr(1)
+:wincmd p
+:call add(r, [line("w0"), s3])
+:
+:exe ":norm! \<C-W>t\<C-W>=50Gzt\<C-W>w\<C-W>+"
+:let s3=GetScreenStr(1)
+:wincmd p
+:call add(r, [line("w0"), s3])
+:
+:exe ":norm! \<C-W>t\<C-W>=59Gzt\<C-W>w\<C-W>+"
+:let s3=GetScreenStr(1)
+::wincmd p
+:call add(r, [line("w0"), s3])
+:
+:bwipeout!
+:$put=r
+:call garbagecollect(1)
+:"
+:/^start:/,$wq! test.out
+ENDTEST
+
+start:
diff --git a/src/testdir/test107.ok b/src/testdir/test107.ok
new file mode 100644
index 0000000..3e0eda1
--- /dev/null
+++ b/src/testdir/test107.ok
@@ -0,0 +1,4 @@
+start:
+[1, '1  ']
+[50, '50 ']
+[59, '59 ']
diff --git a/src/version.c b/src/version.c
index 0ebf14d..28a4136 100644
--- a/src/version.c
+++ b/src/version.c
@@ -735,6 +735,8 @@
 static int included_patches[] =
 {   /* Add new patch number below this line */
 /**/
+    315,
+/**/
     314,
 /**/
     313,