updated for version 7.3.963
Problem:    Setting curbuf without curwin causes trouble.
Solution:   Add switch_buffer() and restore_buffer().  Block autocommands to
            avoid trouble.
diff --git a/src/testdir/test86.ok b/src/testdir/test86.ok
index b33b538..2f0d496 100644
--- a/src/testdir/test86.ok
+++ b/src/testdir/test86.ok
@@ -333,7 +333,7 @@
 Current tab pages:
   <tabpage 0>(1): 1 windows, current is <window object (unknown)>
   Windows:
-    <window object (unknown)>(0): displays buffer <buffer test86.in>; cursor is at (955, 0)
+    <window object (unknown)>(0): displays buffer <buffer test86.in>; cursor is at (954, 0)
   <tabpage 1>(2): 1 windows, current is <window object (unknown)>
   Windows:
     <window object (unknown)>(0): displays buffer <buffer 0>; cursor is at (1, 0)