]> granicus.if.org Git - vim/commitdiff
updated for version 7.3.008 v7.3.008
authorBram Moolenaar <Bram@vim.org>
Tue, 21 Sep 2010 14:56:35 +0000 (16:56 +0200)
committerBram Moolenaar <Bram@vim.org>
Tue, 21 Sep 2010 14:56:35 +0000 (16:56 +0200)
Problem:    'cursorbind' is kept in places where 'scrollbind' is reset.
Solution:   Reset 'cursorbind'.

13 files changed:
src/buffer.c
src/diff.c
src/ex_cmds.c
src/ex_cmds2.c
src/ex_docmd.c
src/ex_getln.c
src/if_cscope.c
src/macros.h
src/quickfix.c
src/search.c
src/tag.c
src/version.c
src/window.c

index 5e885b905da39757c691660a2c348a76090349cc..0850baedd47421a053ce4438a3dde62c12ecdfde 100644 (file)
@@ -1288,9 +1288,12 @@ do_buffer(action, start, dir, count, forceit)
     /* Go to the other buffer. */
     set_curbuf(buf, action);
 
-#if defined(FEAT_LISTCMDS) && defined(FEAT_SCROLLBIND)
+#if defined(FEAT_LISTCMDS) \
+       && (defined(FEAT_SCROLLBIND) || defined(FEAT_CURSORBIND))
     if (action == DOBUF_SPLIT)
-       curwin->w_p_scb = FALSE;        /* reset 'scrollbind' */
+    {
+       RESET_BINDING(curwin);  /* reset 'scrollbind' and 'cursorbind' */
+    }
 #endif
 
 #if defined(FEAT_AUTOCMD) && defined(FEAT_EVAL)
@@ -1917,9 +1920,7 @@ buflist_getfile(n, lnum, options, forceit)
                tabpage_new();
            else if (win_split(0, 0) == FAIL)   /* Open in a new window */
                return FAIL;
-# ifdef FEAT_SCROLLBIND
-           curwin->w_p_scb = FALSE;
-# endif
+           RESET_BINDING(curwin);
        }
     }
 #endif
index 9b6d2791f0c60bef2300d7abca3a4c6e7ee15143..5844ec9233d35fdcecc7589aa91bfb2cd93571e4 100644 (file)
@@ -1127,11 +1127,13 @@ diff_win_options(wp, addbuf)
 # endif
 
     wp->w_p_diff = TRUE;
+    /* Use 'scrollbind' and 'cursorbind' when available */
+#ifdef FEAT_SCROLLBIND
+    wp->w_p_scb = TRUE;
+#endif
 #ifdef FEAT_CURSORBIND
-    /* Use cursorbind if it's available */
     wp->w_p_crb = TRUE;
 #endif
-    wp->w_p_scb = TRUE;
     wp->w_p_wrap = FALSE;
 # ifdef FEAT_FOLDING
     curwin = wp;
@@ -1177,10 +1179,7 @@ ex_diffoff(eap)
        {
            /* Set 'diff', 'scrollbind' off and 'wrap' on. */
            wp->w_p_diff = FALSE;
-#ifdef FEAT_CURSORBIND
-           wp->w_p_crb = FALSE;
-#endif
-           wp->w_p_scb = FALSE;
+           RESET_BINDING(wp);
            wp->w_p_wrap = TRUE;
 #ifdef FEAT_FOLDING
            curwin = wp;
index f78bf9643531a0fefa73aa27330d64ba0a2e1fda..d53652fda2ee02fd25cdaf42eb11f63ec0e0bfcd 100644 (file)
@@ -3498,9 +3498,7 @@ do_ecmd(fnum, ffname, sfname, eap, newlnum, flags, oldwin)
        curbuf->b_p_bin = FALSE;        /* reset 'bin' before reading file */
        curwin->w_p_nu = 0;             /* no line numbers */
        curwin->w_p_rnu = 0;            /* no relative line numbers */
-#ifdef FEAT_SCROLLBIND
-       curwin->w_p_scb = FALSE;        /* no scroll binding */
-#endif
+       RESET_BINDING(curwin);          /* no scroll or cursor binding */
 #ifdef FEAT_ARABIC
        curwin->w_p_arab = FALSE;       /* no arabic mode */
 #endif
@@ -5471,9 +5469,8 @@ prepare_tagpreview(undo_sync)
                return FALSE;
            curwin->w_p_pvw = TRUE;
            curwin->w_p_wfh = TRUE;
-# ifdef FEAT_SCROLLBIND
-           curwin->w_p_scb = FALSE;        /* don't take over 'scrollbind' */
-# endif
+           RESET_BINDING(curwin);          /* don't take over 'scrollbind'
+                                              and 'cursorbind' */
 # ifdef FEAT_DIFF
            curwin->w_p_diff = FALSE;       /* no 'diff' */
 # endif
index f7ffb087af32ce317cf838f5f72fd00f112c7710..8a7498a58228839faccce90c1a5de88d9934e5b4 100644 (file)
@@ -2165,9 +2165,7 @@ do_argfile(eap, argn)
        {
            if (win_split(0, 0) == FAIL)
                return;
-# ifdef FEAT_SCROLLBIND
-           curwin->w_p_scb = FALSE;
-# endif
+           RESET_BINDING(curwin);
        }
        else
 #endif
index 657742e5a2c0dc7e3e573136501244367ac3909a..0940ad8625502dfa0fc6b4bd4d1127cf783b36cf 100644 (file)
@@ -6898,9 +6898,7 @@ handle_drop(filec, filev, split)
 # ifdef FEAT_WINDOWS
        if (win_split(0, 0) == FAIL)
            return;
-#  ifdef FEAT_SCROLLBIND
-       curwin->w_p_scb = FALSE;
-#  endif
+       RESET_BINDING(curwin);
 
        /* When splitting the window, create a new alist.  Otherwise the
         * existing one is overwritten. */
@@ -7300,7 +7298,9 @@ ex_splitview(eap)
                || cmdmod.browse
 #  endif
           )
-           curwin->w_p_scb = FALSE;
+       {
+           RESET_BINDING(curwin);
+       }
        else
            do_check_scrollbind(FALSE);
 # endif
index 79a10466ed8cd4d03a737496a2ef15c2d8621bde..396f686bf02ecc9d41c7cb256709f23cf25788f5 100644 (file)
@@ -6147,9 +6147,7 @@ ex_window()
     curwin->w_p_rl = cmdmsg_rl;
     cmdmsg_rl = FALSE;
 # endif
-# ifdef FEAT_SCROLLBIND
-    curwin->w_p_scb = FALSE;
-# endif
+    RESET_BINDING(curwin);
 
 # ifdef FEAT_AUTOCMD
     /* Do execute autocommands for setting the filetype (load syntax). */
index 3ee7183211d6955b512b077b5766505af9cc6779..1a377da85d0d35445dd5a788947409ab2b7b32ef 100644 (file)
@@ -1274,9 +1274,7 @@ cs_find_common(opt, pat, forceit, verbose, use_ll, cmdline)
                {
                    win_split(postponed_split > 0 ? postponed_split : 0,
                                                       postponed_split_flags);
-#  ifdef FEAT_SCROLLBIND
-                   curwin->w_p_scb = FALSE;
-#  endif
+                   RESET_BINDING(curwin);
                    postponed_split = 0;
                }
 # endif
index 599b40398f7077a8f0c0d4eb6cf19df17a78bf2d..be3af9a5ce50551bdb5496a8571a1a3ba90a20e1 100644 (file)
 #else
 # define DO_AUTOCHDIR
 #endif
+
+#if defined(FEAT_SCROLLBIND) && defined(FEAT_CURSORBIND)
+# define RESET_BINDING(wp)  (wp)->w_p_scb = FALSE; (wp)->w_p_crb = FALSE
+#else
+# if defined(FEAT_SCROLLBIND)
+#  define RESET_BINDING(wp)  (wp)->w_p_scb = FALSE
+# else
+#  if defined(FEAT_CURSORBIND)
+#   define RESET_BINDING(wp)  (wp)->w_p_crb = FALSE
+#  else
+#   define RESET_BINDING(wp)
+#  endif
+# endif
+#endif
index 7ff43183442c25343899433d74f922e71bffa82a..024952379ccc989ac399304d6669604cd615f7c4 100644 (file)
@@ -1656,9 +1656,7 @@ win_found:
            opened_window = TRUE;       /* close it when fail */
            p_swb = empty_option;       /* don't split again */
            swb_flags = 0;
-# ifdef FEAT_SCROLLBIND
-           curwin->w_p_scb = FALSE;
-# endif
+           RESET_BINDING(curwin);
            if (ll_ref != NULL)
            {
                /* The new window should use the location list from the
@@ -2334,9 +2332,7 @@ ex_copen(eap)
            win_goto(lastwin);
        if (win_split(height, WSP_BELOW | WSP_NEWLOC) == FAIL)
            return;             /* not enough room for window */
-#ifdef FEAT_SCROLLBIND
-       curwin->w_p_scb = FALSE;
-#endif
+       RESET_BINDING(curwin);
 
        if (eap->cmdidx == CMD_lopen || eap->cmdidx == CMD_lwindow)
        {
index 26dac9d20c6f6a9779906dae3682908fa2ac720a..1c971ffda8c9f8765ae1347335ec8a4359b8c92d 100644 (file)
@@ -5075,9 +5075,7 @@ search_line:
                        if (win_split(0, 0) == FAIL)
 #endif
                            break;
-#ifdef FEAT_SCROLLBIND
-                       curwin->w_p_scb = FALSE;
-#endif
+                       RESET_BINDING(curwin);
                    }
                    if (depth == -1)
                    {
index fdd8dec95cb781624d66fd591cfa70c12657df90..50c3ce6927fde986b355762d39d0ac3d5a10c1c2 100644 (file)
--- a/src/tag.c
+++ b/src/tag.c
@@ -3143,9 +3143,7 @@ jumpto_tag(lbuf, forceit, keep_help)
     {
        win_split(postponed_split > 0 ? postponed_split : 0,
                                                       postponed_split_flags);
-# ifdef FEAT_SCROLLBIND
-       curwin->w_p_scb = FALSE;
-# endif
+       RESET_BINDING(curwin);
     }
 #endif
 
index ab8f35e8b905e084e68d70563bef1958cc1b145d..d4a22da8d1704f98bbea33ec8c6eea2a361b1b18 100644 (file)
@@ -714,6 +714,8 @@ static char *(features[]) =
 
 static int included_patches[] =
 {   /* Add new patch number below this line */
+/**/
+    8,
 /**/
     7,
 /**/
index 4b721eaa76c924a88e1aa0ea5873a79c0864a214..7a2b1012fd38622b69bf134376b157c105152a3d 100644 (file)
@@ -525,9 +525,7 @@ wingotofile:
                    setpcmark();
                    if (win_split(0, 0) == OK)
                    {
-# ifdef FEAT_SCROLLBIND
-                       curwin->w_p_scb = FALSE;
-# endif
+                       RESET_BINDING(curwin);
                        (void)do_ecmd(0, ptr, NULL, NULL, ECMD_LASTL,
                                                           ECMD_HIDE, NULL);
                        if (nchar == 'F' && lnum >= 0)
@@ -3277,9 +3275,7 @@ win_alloc_aucmd_win()
     if (aucmd_win != NULL)
     {
        win_init_some(aucmd_win, curwin);
-# ifdef FEAT_SCROLLBIND
-       aucmd_win->w_p_scb = FALSE;
-# endif
+       RESET_BINDING(aucmd_win);
        new_frame(aucmd_win);
     }
 }
@@ -3320,10 +3316,8 @@ win_alloc_firstwin(oldwin)
        /* First window in new tab page, initialize it from "oldwin". */
        win_init(curwin, oldwin, 0);
 
-# ifdef FEAT_SCROLLBIND
-       /* We don't want scroll-binding in the first window. */
-       curwin->w_p_scb = FALSE;
-# endif
+       /* We don't want cursor- and scroll-binding in the first window. */
+       RESET_BINDING(curwin);
     }
 #endif