diff options
Diffstat (limited to 'data/vim/patches/8.1.0434')
-rw-r--r-- | data/vim/patches/8.1.0434 | 335 |
1 files changed, 0 insertions, 335 deletions
diff --git a/data/vim/patches/8.1.0434 b/data/vim/patches/8.1.0434 deleted file mode 100644 index 4fd7d7394..000000000 --- a/data/vim/patches/8.1.0434 +++ /dev/null @@ -1,335 +0,0 @@ -To: vim_dev@googlegroups.com -Subject: Patch 8.1.0434 -Fcc: outbox -From: Bram Moolenaar <Bram@moolenaar.net> -Mime-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit ------------- - -Patch 8.1.0434 -Problem: copy_loclist() is too long. -Solution: Split in multiple functions. (Yegappan Lakshmanan) -Files: src/proto/quickfix.pro, src/quickfix.c, src/window.c - - -*** ../vim-8.1.0433/src/proto/quickfix.pro 2018-07-25 22:36:48.987518583 +0200 ---- src/proto/quickfix.pro 2018-09-25 22:06:03.183095511 +0200 -*************** -*** 1,7 **** - /* quickfix.c */ - int qf_init(win_T *wp, char_u *efile, char_u *errorformat, int newlist, char_u *qf_title, char_u *enc); - void qf_free_all(win_T *wp); -! void copy_loclist(win_T *from, win_T *to); - void qf_jump(qf_info_T *qi, int dir, int errornr, int forceit); - void qf_list(exarg_T *eap); - void qf_age(exarg_T *eap); ---- 1,7 ---- - /* quickfix.c */ - int qf_init(win_T *wp, char_u *efile, char_u *errorformat, int newlist, char_u *qf_title, char_u *enc); - void qf_free_all(win_T *wp); -! void copy_loclist_stack(win_T *from, win_T *to); - void qf_jump(qf_info_T *qi, int dir, int errornr, int forceit); - void qf_list(exarg_T *eap); - void qf_age(exarg_T *eap); -*** ../vim-8.1.0433/src/quickfix.c 2018-09-24 21:50:08.932086794 +0200 ---- src/quickfix.c 2018-09-25 22:06:03.187095471 +0200 -*************** -*** 2044,2165 **** - } - - /* -! * Copy the location list from window "from" to window "to". - */ - void -! copy_loclist(win_T *from, win_T *to) - { - qf_info_T *qi; - int idx; -- int i; - -! /* -! * When copying from a location list window, copy the referenced -! * location list. For other windows, copy the location list for -! * that window. -! */ - if (IS_LL_WINDOW(from)) - qi = from->w_llist_ref; - else - qi = from->w_llist; - -! if (qi == NULL) /* no location list to copy */ - return; - -! /* allocate a new location list */ - if ((to->w_llist = ll_new_list()) == NULL) - return; - - to->w_llist->qf_listcount = qi->qf_listcount; - -! /* Copy the location lists one at a time */ - for (idx = 0; idx < qi->qf_listcount; ++idx) - { -- qf_list_T *from_qfl; -- qf_list_T *to_qfl; -- - to->w_llist->qf_curlist = idx; - -! from_qfl = &qi->qf_lists[idx]; -! to_qfl = &to->w_llist->qf_lists[idx]; -! -! /* Some of the fields are populated by qf_add_entry() */ -! to_qfl->qf_nonevalid = from_qfl->qf_nonevalid; -! to_qfl->qf_count = 0; -! to_qfl->qf_index = 0; -! to_qfl->qf_start = NULL; -! to_qfl->qf_last = NULL; -! to_qfl->qf_ptr = NULL; -! if (from_qfl->qf_title != NULL) -! to_qfl->qf_title = vim_strsave(from_qfl->qf_title); -! else -! to_qfl->qf_title = NULL; -! if (from_qfl->qf_ctx != NULL) -! { -! to_qfl->qf_ctx = alloc_tv(); -! if (to_qfl->qf_ctx != NULL) -! copy_tv(from_qfl->qf_ctx, to_qfl->qf_ctx); -! } -! else -! to_qfl->qf_ctx = NULL; -! -! if (from_qfl->qf_count) -! { -! qfline_T *from_qfp; -! qfline_T *prevp; -! -! /* copy all the location entries in this list */ -! for (i = 0, from_qfp = from_qfl->qf_start; -! i < from_qfl->qf_count && from_qfp != NULL; -! ++i, from_qfp = from_qfp->qf_next) -! { -! if (qf_add_entry(to->w_llist, -! to->w_llist->qf_curlist, -! NULL, -! NULL, -! from_qfp->qf_module, -! 0, -! from_qfp->qf_text, -! from_qfp->qf_lnum, -! from_qfp->qf_col, -! from_qfp->qf_viscol, -! from_qfp->qf_pattern, -! from_qfp->qf_nr, -! 0, -! from_qfp->qf_valid) == FAIL) -! { -! qf_free_all(to); -! return; -! } -! /* -! * qf_add_entry() will not set the qf_num field, as the -! * directory and file names are not supplied. So the qf_fnum -! * field is copied here. -! */ -! prevp = to->w_llist->qf_lists[to->w_llist->qf_curlist].qf_last; -! prevp->qf_fnum = from_qfp->qf_fnum; /* file number */ -! prevp->qf_type = from_qfp->qf_type; /* error type */ -! if (from_qfl->qf_ptr == from_qfp) -! to_qfl->qf_ptr = prevp; /* current location */ -! } -! } -! -! to_qfl->qf_index = from_qfl->qf_index; /* current index in the list */ -! -! /* Assign a new ID for the location list */ -! to_qfl->qf_id = ++last_qf_id; -! to_qfl->qf_changedtick = 0L; -! -! /* When no valid entries are present in the list, qf_ptr points to -! * the first item in the list */ -! if (to_qfl->qf_nonevalid) - { -! to_qfl->qf_ptr = to_qfl->qf_start; -! to_qfl->qf_index = 1; - } - } - -! to->w_llist->qf_curlist = qi->qf_curlist; /* current list */ - } - - /* ---- 2044,2179 ---- - } - - /* -! * Copy location list entries from 'from_qfl' to 'to_qfl'. -! */ -! static int -! copy_loclist_entries(qf_list_T *from_qfl, qf_list_T *to_qfl, qf_info_T *to_qi) -! { -! int i; -! qfline_T *from_qfp; -! qfline_T *prevp; -! -! // copy all the location entries in this list -! for (i = 0, from_qfp = from_qfl->qf_start; -! i < from_qfl->qf_count && from_qfp != NULL; -! ++i, from_qfp = from_qfp->qf_next) -! { -! if (qf_add_entry(to_qi, -! to_qi->qf_curlist, -! NULL, -! NULL, -! from_qfp->qf_module, -! 0, -! from_qfp->qf_text, -! from_qfp->qf_lnum, -! from_qfp->qf_col, -! from_qfp->qf_viscol, -! from_qfp->qf_pattern, -! from_qfp->qf_nr, -! 0, -! from_qfp->qf_valid) == FAIL) -! return FAIL; -! -! // qf_add_entry() will not set the qf_num field, as the -! // directory and file names are not supplied. So the qf_fnum -! // field is copied here. -! prevp = to_qfl->qf_last; -! prevp->qf_fnum = from_qfp->qf_fnum; // file number -! prevp->qf_type = from_qfp->qf_type; // error type -! if (from_qfl->qf_ptr == from_qfp) -! to_qfl->qf_ptr = prevp; // current location -! } -! -! return OK; -! } -! -! /* -! * Copy the specified location list 'from_qfl' to 'to_qfl'. -! */ -! static int -! copy_loclist(qf_list_T *from_qfl, qf_list_T *to_qfl, qf_info_T *to_qi) -! { -! // Some of the fields are populated by qf_add_entry() -! to_qfl->qf_nonevalid = from_qfl->qf_nonevalid; -! to_qfl->qf_count = 0; -! to_qfl->qf_index = 0; -! to_qfl->qf_start = NULL; -! to_qfl->qf_last = NULL; -! to_qfl->qf_ptr = NULL; -! if (from_qfl->qf_title != NULL) -! to_qfl->qf_title = vim_strsave(from_qfl->qf_title); -! else -! to_qfl->qf_title = NULL; -! if (from_qfl->qf_ctx != NULL) -! { -! to_qfl->qf_ctx = alloc_tv(); -! if (to_qfl->qf_ctx != NULL) -! copy_tv(from_qfl->qf_ctx, to_qfl->qf_ctx); -! } -! else -! to_qfl->qf_ctx = NULL; -! -! if (from_qfl->qf_count) -! if (copy_loclist_entries(from_qfl, to_qfl, to_qi) == FAIL) -! return FAIL; -! -! to_qfl->qf_index = from_qfl->qf_index; // current index in the list -! -! // Assign a new ID for the location list -! to_qfl->qf_id = ++last_qf_id; -! to_qfl->qf_changedtick = 0L; -! -! // When no valid entries are present in the list, qf_ptr points to -! // the first item in the list -! if (to_qfl->qf_nonevalid) -! { -! to_qfl->qf_ptr = to_qfl->qf_start; -! to_qfl->qf_index = 1; -! } -! -! return OK; -! } -! -! /* -! * Copy the location list stack 'from' window to 'to' window. - */ - void -! copy_loclist_stack(win_T *from, win_T *to) - { - qf_info_T *qi; - int idx; - -! // When copying from a location list window, copy the referenced -! // location list. For other windows, copy the location list for -! // that window. - if (IS_LL_WINDOW(from)) - qi = from->w_llist_ref; - else - qi = from->w_llist; - -! if (qi == NULL) // no location list to copy - return; - -! // allocate a new location list - if ((to->w_llist = ll_new_list()) == NULL) - return; - - to->w_llist->qf_listcount = qi->qf_listcount; - -! // Copy the location lists one at a time - for (idx = 0; idx < qi->qf_listcount; ++idx) - { - to->w_llist->qf_curlist = idx; - -! if (copy_loclist(&qi->qf_lists[idx], -! &to->w_llist->qf_lists[idx], to->w_llist) == FAIL) - { -! qf_free_all(to); -! return; - } - } - -! to->w_llist->qf_curlist = qi->qf_curlist; // current list - } - - /* -*** ../vim-8.1.0433/src/window.c 2018-09-13 15:33:39.609712174 +0200 ---- src/window.c 2018-09-25 22:06:03.187095471 +0200 -*************** -*** 1308,1314 **** - newp->w_llist_ref = NULL; - } - else -! copy_loclist(oldp, newp); - #endif - newp->w_localdir = (oldp->w_localdir == NULL) - ? NULL : vim_strsave(oldp->w_localdir); ---- 1308,1314 ---- - newp->w_llist_ref = NULL; - } - else -! copy_loclist_stack(oldp, newp); - #endif - newp->w_localdir = (oldp->w_localdir == NULL) - ? NULL : vim_strsave(oldp->w_localdir); -*** ../vim-8.1.0433/src/version.c 2018-09-25 20:48:53.882887698 +0200 ---- src/version.c 2018-09-25 22:07:03.802483924 +0200 -*************** -*** 796,797 **** ---- 796,799 ---- - { /* Add new patch number below this line */ -+ /**/ -+ 434, - /**/ - --- -hundred-and-one symptoms of being an internet addict: -100. The most exciting sporting events you noticed during summer 1996 - was Netscape vs. Microsoft. - - /// 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 /// |