diff --git a/src/option.c b/src/option.c
index e91ef5d..2f1ef11 100644
--- a/src/option.c
+++ b/src/option.c
@@ -7801,7 +7801,10 @@
     else if ((int *)varp == &curwin->w_p_scb)
     {
 	if (curwin->w_p_scb)
+	{
 	    do_check_scrollbind(FALSE);
+	    curwin->w_scbind_pos = curwin->w_topline;
+	}
     }
 #endif
 
diff --git a/src/testdir/Make_amiga.mak b/src/testdir/Make_amiga.mak
index afc4a03..0c1e9af 100644
--- a/src/testdir/Make_amiga.mak
+++ b/src/testdir/Make_amiga.mak
@@ -33,7 +33,7 @@
 		test76.out test77.out test78.out test79.out test80.out \
 		test81.out test82.out test83.out test84.out test88.out \
 		test89.out test90.out test91.out test92.out test93.out \
-		test94.out test95.out test96.out test97.out
+		test94.out test95.out test96.out test97.out test98.out
 
 .SUFFIXES: .in .out
 
@@ -147,3 +147,4 @@
 test95.out: test95.in
 test96.out: test96.in
 test97.out: test97.in
+test98.out: test98.in
diff --git a/src/testdir/Make_dos.mak b/src/testdir/Make_dos.mak
index 012ca8f..a57649e 100644
--- a/src/testdir/Make_dos.mak
+++ b/src/testdir/Make_dos.mak
@@ -32,7 +32,7 @@
 		test79.out test80.out test81.out test82.out test83.out \
 		test84.out test85.out test86.out test87.out test88.out \
 		test89.out test90.out test91.out test92.out test93.out \
-		test94.out test95.out test96.out
+		test94.out test95.out test96.out test98.out
 
 SCRIPTS32 =	test50.out test70.out
 
diff --git a/src/testdir/Make_ming.mak b/src/testdir/Make_ming.mak
index 800603b..6c1fae0 100644
--- a/src/testdir/Make_ming.mak
+++ b/src/testdir/Make_ming.mak
@@ -52,7 +52,7 @@
 		test79.out test80.out test81.out test82.out test83.out \
 		test84.out test85.out test86.out test87.out test88.out \
 		test89.out test90.out test91.out test92.out test93.out \
-		test94.out test95.out test96.out
+		test94.out test95.out test96.out test98.out
 
 SCRIPTS32 =	test50.out test70.out
 
diff --git a/src/testdir/Make_os2.mak b/src/testdir/Make_os2.mak
index bb79c00..5741f32 100644
--- a/src/testdir/Make_os2.mak
+++ b/src/testdir/Make_os2.mak
@@ -34,7 +34,7 @@
 		test76.out test77.out test78.out test79.out test80.out \
 		test81.out test82.out test83.out test84.out test88.out \
 		test89.out test90.out test91.out test92.out test93.out \
-		test94.out test95.out test96.out
+		test94.out test95.out test96.out test98.out
 
 .SUFFIXES: .in .out
 
diff --git a/src/testdir/Make_vms.mms b/src/testdir/Make_vms.mms
index a62b7ad..e6f6fbc 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:  2013 Jul 03
+# Last change:  2013 Jul 09
 #
 # 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.
@@ -78,7 +78,7 @@
 	 test77.out test78.out test79.out test80.out test81.out \
 	 test82.out test83.out test84.out test88.out test89.out \
 	 test90.out test91.out test92.out test93.out test94.out \
-	 test95.out test96.out test97.out
+	 test95.out test96.out test97.out test98.out
 
 # Known problems:
 # Test 30: a problem around mac format - unknown reason
diff --git a/src/testdir/Makefile b/src/testdir/Makefile
index bc525d9..0292dd2 100644
--- a/src/testdir/Makefile
+++ b/src/testdir/Makefile
@@ -29,7 +29,7 @@
 		test79.out test80.out test81.out test82.out test83.out \
 		test84.out test85.out test86.out test87.out test88.out \
 		test89.out test90.out test91.out test92.out test93.out \
-		test94.out test95.out test96.out test97.out
+		test94.out test95.out test96.out test97.out test98.out
 
 SCRIPTS_GUI = test16.out
 
diff --git a/src/testdir/test98.in b/src/testdir/test98.in
new file mode 100644
index 0000000..b316017
--- /dev/null
+++ b/src/testdir/test98.in
@@ -0,0 +1,21 @@
+Test for 'scrollbind' causing an unexpected scroll of one of the windows.
+STARTTEST
+:so small.vim
+:source test98a.in
+:let topLineLeft = line('w0')
+:wincmd p
+:let topLineRight = line('w0')
+:setl noscrollbind
+:wincmd p
+:setl noscrollbind
+:q!
+:%del _
+:call setline(1, 'Difference between the top lines (left - right): ' . string(topLineLeft - topLineRight))
+:w! test.out
+:brewind
+ENDTEST
+
+STARTTEST
+:qa!
+ENDTEST
+
diff --git a/src/testdir/test98.ok b/src/testdir/test98.ok
new file mode 100644
index 0000000..356ddd8
--- /dev/null
+++ b/src/testdir/test98.ok
@@ -0,0 +1 @@
+Difference between the top lines (left - right): 0
diff --git a/src/testdir/test98a.in b/src/testdir/test98a.in
new file mode 100644
index 0000000..4999c28
--- /dev/null
+++ b/src/testdir/test98a.in
@@ -0,0 +1,27 @@
+" We don't want the status line to cause problems:
+set laststatus=0
+redraw!
+let g:totalLines = &lines * 20
+let middle = g:totalLines / 2
+wincmd n
+wincmd o
+for i in range(1, g:totalLines)
+	call setline(i, 'LINE ' . i)
+endfor
+
+exe string(middle)
+normal zt
+normal M
+
+aboveleft vert new
+for i in range(1, g:totalLines)
+	call setline(i, 'line ' . i)
+endfor
+exe string(middle)
+normal zt
+normal M
+setl scb
+
+wincmd p
+
+call feedkeys(":setl scb\n\<C-w>\<C-w>", 't')
diff --git a/src/version.c b/src/version.c
index ad4e441..25534c5 100644
--- a/src/version.c
+++ b/src/version.c
@@ -729,6 +729,8 @@
 static int included_patches[] =
 {   /* Add new patch number below this line */
 /**/
+    5,
+/**/
     4,
 /**/
     3,
