summaryrefslogtreecommitdiffstats
path: root/source/ap/vim/patches/7.3.456
diff options
context:
space:
mode:
author Patrick J Volkerding <volkerdi@slackware.com>2013-11-04 17:08:47 +0000
committer Eric Hameleers <alien@slackware.com>2018-05-31 22:57:36 +0200
commit76fc4757ac91ac7947a01fb7b53dddf9a78a01d1 (patch)
tree9b98e6e193c7870cb27ac861394c1c4592850922 /source/ap/vim/patches/7.3.456
parent9664bee729d487bcc0a0bc35859f8e13d5421c75 (diff)
downloadcurrent-76fc4757ac91ac7947a01fb7b53dddf9a78a01d1.tar.gz
current-76fc4757ac91ac7947a01fb7b53dddf9a78a01d1.tar.xz
Slackware 14.1slackware-14.1
Mon Nov 4 17:08:47 UTC 2013 Slackware 14.1 x86_64 stable is released! It's been another interesting release cycle here at Slackware bringing new features like support for UEFI machines, updated compilers and development tools, the switch from MySQL to MariaDB, and many more improvements throughout the system. Thanks to the team, the upstream developers, the dedicated Slackware community, and everyone else who pitched in to help make this release a reality. The ISOs are off to be replicated, a 6 CD-ROM 32-bit set and a dual-sided 32-bit/64-bit x86/x86_64 DVD. Please consider supporting the Slackware project by picking up a copy from store.slackware.com. We're taking pre-orders now, and offer a discount if you sign up for a subscription. Have fun! :-)
Diffstat (limited to 'source/ap/vim/patches/7.3.456')
-rw-r--r--source/ap/vim/patches/7.3.456376
1 files changed, 0 insertions, 376 deletions
diff --git a/source/ap/vim/patches/7.3.456 b/source/ap/vim/patches/7.3.456
deleted file mode 100644
index 26fc2a987..000000000
--- a/source/ap/vim/patches/7.3.456
+++ /dev/null
@@ -1,376 +0,0 @@
-To: vim_dev@googlegroups.com
-Subject: Patch 7.3.456
-Fcc: outbox
-From: Bram Moolenaar <Bram@moolenaar.net>
-Mime-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-------------
-
-Patch 7.3.456
-Problem: ":tab drop file" has several problems, including moving the
- current window and opening a new tab for a file that already has a
- window.
-Solution: Refactor ":tab drop" handling. (Hirohito Higashi)
-Files: src/buffer.c, src/testdir/test62.in, src/testdir/test62.ok
-
-
-*** ../vim-7.3.455/src/buffer.c 2012-02-22 14:58:24.000000000 +0100
---- src/buffer.c 2012-02-22 19:08:34.000000000 +0100
-***************
-*** 4405,4411 ****
- {
- int i;
- win_T *wp, *wpnext;
-! char_u *opened; /* array of flags for which args are open */
- int opened_len; /* length of opened[] */
- int use_firstwin = FALSE; /* use first window for arglist */
- int split_ret = OK;
---- 4405,4416 ----
- {
- int i;
- win_T *wp, *wpnext;
-! char_u *opened; /* Array of weight for which args are open:
-! * 0: not opened
-! * 1: opened in other tab
-! * 2: opened in curtab
-! * 3: opened in curtab and curwin
-! */
- int opened_len; /* length of opened[] */
- int use_firstwin = FALSE; /* use first window for arglist */
- int split_ret = OK;
-***************
-*** 4414,4419 ****
---- 4419,4426 ----
- buf_T *buf;
- tabpage_T *tpnext;
- int had_tab = cmdmod.tab;
-+ win_T *old_curwin, *last_curwin;
-+ tabpage_T *old_curtab, *last_curtab;
- win_T *new_curwin = NULL;
- tabpage_T *new_curtab = NULL;
-
-***************
-*** 4430,4435 ****
---- 4437,4451 ----
- if (opened == NULL)
- return;
-
-+ /* Autocommands may do anything to the argument list. Make sure it's not
-+ * freed while we are working here by "locking" it. We still have to
-+ * watch out for its size to be changed. */
-+ alist = curwin->w_alist;
-+ ++alist->al_refcount;
-+
-+ old_curwin = curwin;
-+ old_curtab = curtab;
-+
- #ifdef FEAT_GUI
- need_mouse_correct = TRUE;
- #endif
-***************
-*** 4451,4486 ****
- wpnext = wp->w_next;
- buf = wp->w_buffer;
- if (buf->b_ffname == NULL
-! || buf->b_nwindows > 1
- #ifdef FEAT_VERTSPLIT
- || wp->w_width != Columns
- #endif
- )
-! i = ARGCOUNT;
- else
- {
- /* check if the buffer in this window is in the arglist */
-! for (i = 0; i < ARGCOUNT; ++i)
- {
-! if (ARGLIST[i].ae_fnum == buf->b_fnum
-! || fullpathcmp(alist_name(&ARGLIST[i]),
-! buf->b_ffname, TRUE) & FPC_SAME)
- {
-! if (i < opened_len)
- {
-! opened[i] = TRUE;
- if (i == 0)
- {
- new_curwin = wp;
- new_curtab = curtab;
- }
- }
-! if (wp->w_alist != curwin->w_alist)
- {
- /* Use the current argument list for all windows
- * containing a file from it. */
- alist_unlink(wp->w_alist);
-! wp->w_alist = curwin->w_alist;
- ++wp->w_alist->al_refcount;
- }
- break;
---- 4467,4517 ----
- wpnext = wp->w_next;
- buf = wp->w_buffer;
- if (buf->b_ffname == NULL
-! || (!keep_tabs && buf->b_nwindows > 1)
- #ifdef FEAT_VERTSPLIT
- || wp->w_width != Columns
- #endif
- )
-! i = opened_len;
- else
- {
- /* check if the buffer in this window is in the arglist */
-! for (i = 0; i < opened_len; ++i)
- {
-! if (i < alist->al_ga.ga_len
-! && (AARGLIST(alist)[i].ae_fnum == buf->b_fnum
-! || fullpathcmp(alist_name(&AARGLIST(alist)[i]),
-! buf->b_ffname, TRUE) & FPC_SAME))
- {
-! int weight = 1;
-!
-! if (old_curtab == curtab)
-! {
-! ++weight;
-! if (old_curwin == wp)
-! ++weight;
-! }
-!
-! if (weight > (int)opened[i])
- {
-! opened[i] = (char_u)weight;
- if (i == 0)
- {
-+ if (new_curwin != NULL)
-+ new_curwin->w_arg_idx = opened_len;
- new_curwin = wp;
- new_curtab = curtab;
- }
- }
-! else if (keep_tabs)
-! i = opened_len;
-!
-! if (wp->w_alist != alist)
- {
- /* Use the current argument list for all windows
- * containing a file from it. */
- alist_unlink(wp->w_alist);
-! wp->w_alist = alist;
- ++wp->w_alist->al_refcount;
- }
- break;
-***************
-*** 4489,4495 ****
- }
- wp->w_arg_idx = i;
-
-! if (i == ARGCOUNT && !keep_tabs) /* close this window */
- {
- if (P_HID(buf) || forceit || buf->b_nwindows > 1
- || !bufIsChanged(buf))
---- 4520,4526 ----
- }
- wp->w_arg_idx = i;
-
-! if (i == opened_len && !keep_tabs)/* close this window */
- {
- if (P_HID(buf) || forceit || buf->b_nwindows > 1
- || !bufIsChanged(buf))
-***************
-*** 4511,4517 ****
- }
- #ifdef FEAT_WINDOWS
- /* don't close last window */
-! if (firstwin == lastwin && first_tabpage->tp_next == NULL)
- #endif
- use_firstwin = TRUE;
- #ifdef FEAT_WINDOWS
---- 4542,4549 ----
- }
- #ifdef FEAT_WINDOWS
- /* don't close last window */
-! if (firstwin == lastwin
-! && (first_tabpage->tp_next == NULL || !had_tab))
- #endif
- use_firstwin = TRUE;
- #ifdef FEAT_WINDOWS
-***************
-*** 4545,4564 ****
- * Open a window for files in the argument list that don't have one.
- * ARGCOUNT may change while doing this, because of autocommands.
- */
-! if (count > ARGCOUNT || count <= 0)
-! count = ARGCOUNT;
-!
-! /* Autocommands may do anything to the argument list. Make sure it's not
-! * freed while we are working here by "locking" it. We still have to
-! * watch out for its size to be changed. */
-! alist = curwin->w_alist;
-! ++alist->al_refcount;
-
- #ifdef FEAT_AUTOCMD
- /* Don't execute Win/Buf Enter/Leave autocommands here. */
- ++autocmd_no_enter;
- ++autocmd_no_leave;
- #endif
- win_enter(lastwin, FALSE);
- #ifdef FEAT_WINDOWS
- /* ":drop all" should re-use an empty window to avoid "--remote-tab"
---- 4577,4592 ----
- * Open a window for files in the argument list that don't have one.
- * ARGCOUNT may change while doing this, because of autocommands.
- */
-! if (count > opened_len || count <= 0)
-! count = opened_len;
-
- #ifdef FEAT_AUTOCMD
- /* Don't execute Win/Buf Enter/Leave autocommands here. */
- ++autocmd_no_enter;
- ++autocmd_no_leave;
- #endif
-+ last_curwin = curwin;
-+ last_curtab = curtab;
- win_enter(lastwin, FALSE);
- #ifdef FEAT_WINDOWS
- /* ":drop all" should re-use an empty window to avoid "--remote-tab"
-***************
-*** 4568,4578 ****
- use_firstwin = TRUE;
- #endif
-
-! for (i = 0; i < count && i < alist->al_ga.ga_len && !got_int; ++i)
- {
- if (alist == &global_alist && i == global_alist.al_ga.ga_len - 1)
- arg_had_last = TRUE;
-! if (i < opened_len && opened[i])
- {
- /* Move the already present window to below the current window */
- if (curwin->w_arg_idx != i)
---- 4596,4606 ----
- use_firstwin = TRUE;
- #endif
-
-! for (i = 0; i < count && i < opened_len && !got_int; ++i)
- {
- if (alist == &global_alist && i == global_alist.al_ga.ga_len - 1)
- arg_had_last = TRUE;
-! if (opened[i] > 0)
- {
- /* Move the already present window to below the current window */
- if (curwin->w_arg_idx != i)
-***************
-*** 4581,4587 ****
- {
- if (wpnext->w_arg_idx == i)
- {
-! win_move_after(wpnext, curwin);
- break;
- }
- }
---- 4609,4621 ----
- {
- if (wpnext->w_arg_idx == i)
- {
-! if (keep_tabs)
-! {
-! new_curwin = wpnext;
-! new_curtab = curtab;
-! }
-! else
-! win_move_after(wpnext, curwin);
- break;
- }
- }
-***************
-*** 4636,4641 ****
---- 4670,4683 ----
- #ifdef FEAT_AUTOCMD
- --autocmd_no_enter;
- #endif
-+ /* restore last referenced tabpage's curwin */
-+ if (last_curtab != new_curtab)
-+ {
-+ if (valid_tabpage(last_curtab))
-+ goto_tabpage_tp(last_curtab);
-+ if (win_valid(last_curwin))
-+ win_enter(last_curwin, FALSE);
-+ }
- /* to window with first arg */
- if (valid_tabpage(new_curtab))
- goto_tabpage_tp(new_curtab);
-*** ../vim-7.3.455/src/testdir/test62.in 2010-08-15 21:57:29.000000000 +0200
---- src/testdir/test62.in 2012-02-22 18:45:10.000000000 +0100
-***************
-*** 50,55 ****
---- 50,92 ----
- :call append(line('$'), test_status)
- :"
- :"
-+ :" Test for ":tab drop exist-file" to keep current window.
-+ :sp test1
-+ :tab drop test1
-+ :let test_status = 'tab drop 1: fail'
-+ :if tabpagenr('$') == 1 && winnr('$') == 2 && winnr() == 1
-+ : let test_status = 'tab drop 1: pass'
-+ :endif
-+ :close
-+ :call append(line('$'), test_status)
-+ :"
-+ :"
-+ :" Test for ":tab drop new-file" to keep current window of tabpage 1.
-+ :split
-+ :tab drop newfile
-+ :let test_status = 'tab drop 2: fail'
-+ :if tabpagenr('$') == 2 && tabpagewinnr(1, '$') == 2 && tabpagewinnr(1) == 1
-+ : let test_status = 'tab drop 2: pass'
-+ :endif
-+ :tabclose
-+ :q
-+ :call append(line('$'), test_status)
-+ :"
-+ :"
-+ :" Test for ":tab drop multi-opend-file" to keep current tabpage and window.
-+ :new test1
-+ :tabnew
-+ :new test1
-+ :tab drop test1
-+ :let test_status = 'tab drop 3: fail'
-+ :if tabpagenr() == 2 && tabpagewinnr(2, '$') == 2 && tabpagewinnr(2) == 1
-+ : let test_status = 'tab drop 3: pass'
-+ :endif
-+ :tabclose
-+ :q
-+ :call append(line('$'), test_status)
-+ :"
-+ :"
- :/^Results/,$w! test.out
- :qa!
- ENDTEST
-*** ../vim-7.3.455/src/testdir/test62.ok 2010-08-15 21:57:29.000000000 +0200
---- src/testdir/test62.ok 2012-02-22 18:45:10.000000000 +0100
-***************
-*** 5,7 ****
---- 5,10 ----
- this is tab page 4
- gettabvar: pass
- settabvar: pass
-+ tab drop 1: pass
-+ tab drop 2: pass
-+ tab drop 3: pass
-*** ../vim-7.3.455/src/version.c 2012-02-22 18:29:29.000000000 +0100
---- src/version.c 2012-02-22 19:11:52.000000000 +0100
-***************
-*** 716,717 ****
---- 716,719 ----
- { /* Add new patch number below this line */
-+ /**/
-+ 456,
- /**/
-
---
-% cat /usr/include/life.h
-void life(void);
-
- /// Bram Moolenaar -- Bram@Moolenaar.net -- http://www.Moolenaar.net \\\
-/// sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\
-\\\ an exciting new programming language -- http://www.Zimbu.org ///
- \\\ help me help AIDS victims -- http://ICCF-Holland.org ///