diff --git a/src/ex_docmd.c b/src/ex_docmd.c
--- a/src/ex_docmd.c
+++ b/src/ex_docmd.c
@@ -8050,6 +8050,7 @@
 {
 #ifdef FEAT_SCROLLBIND
     win_T	*wp;
+    buf_T	*buf = curbuf;
     long	topline;
     long	y;
     linenr_T	old_linenr = curwin->w_cursor.lnum;
@@ -8088,6 +8089,7 @@
     {
 	if (curwin->w_p_scb)
 	{
+	    curbuf = curwin->w_buffer;
 	    y = topline - curwin->w_topline;
 	    if (y > 0)
 		scrollup(y, TRUE);
@@ -8102,6 +8104,7 @@
 	}
     }
     curwin = wp;
+    curbuf = buf;
     if (curwin->w_p_scb)
     {
 	did_syncbind = TRUE;
