summaryrefslogtreecommitdiff
path: root/data/vim/patches/8.1.1452
diff options
context:
space:
mode:
Diffstat (limited to 'data/vim/patches/8.1.1452')
-rw-r--r--data/vim/patches/8.1.1452288
1 files changed, 0 insertions, 288 deletions
diff --git a/data/vim/patches/8.1.1452 b/data/vim/patches/8.1.1452
deleted file mode 100644
index 5caad9370..000000000
--- a/data/vim/patches/8.1.1452
+++ /dev/null
@@ -1,288 +0,0 @@
-To: vim_dev@googlegroups.com
-Subject: Patch 8.1.1452
-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.1452
-Problem: Line and col property of popup windows not properly checked.
-Solution: Check for "+" or "-" sign.
-Files: src/popupwin.c, src/dict.c, src/proto/dict.pro,
- src/window.c, src/testdir/test_popupwin.vim
-
-
-*** ../vim-8.1.1451/src/popupwin.c 2019-06-02 15:34:15.458696427 +0200
---- src/popupwin.c 2019-06-02 16:47:24.668428506 +0200
-***************
-*** 29,35 ****
- };
-
- /*
-! * Get option value for"key", which is "line" or "col".
- * Handles "cursor+N" and "cursor-N".
- */
- static int
---- 29,35 ----
- };
-
- /*
-! * Get option value for "key", which is "line" or "col".
- * Handles "cursor+N" and "cursor-N".
- */
- static int
-***************
-*** 47,59 ****
-
- val = tv_get_string(&di->di_tv);
- if (STRNCMP(val, "cursor", 6) != 0)
-! return dict_get_number(dict, key);
-
- setcursor_mayforce(TRUE);
- s = val + 6;
- if (*s != NUL)
- {
-! n = strtol((char *)s, (char **)&endp, 10);
- if (endp != NULL && *skipwhite(endp) != NUL)
- {
- semsg(_(e_invexpr2), val);
---- 47,61 ----
-
- val = tv_get_string(&di->di_tv);
- if (STRNCMP(val, "cursor", 6) != 0)
-! return dict_get_number_check(dict, key);
-
- setcursor_mayforce(TRUE);
- s = val + 6;
- if (*s != NUL)
- {
-! endp = s;
-! if (*skipwhite(s) == '+' || *skipwhite(s) == '-')
-! n = strtol((char *)s, (char **)&endp, 10);
- if (endp != NULL && *skipwhite(endp) != NUL)
- {
- semsg(_(e_invexpr2), val);
-***************
-*** 902,908 ****
- dict_add_number(dict, "core_height", wp->w_height);
-
- dict_add_number(dict, "visible",
-! (wp->w_popup_flags & POPF_HIDDEN) == 0);
- }
- }
-
---- 904,910 ----
- dict_add_number(dict, "core_height", wp->w_height);
-
- dict_add_number(dict, "visible",
-! win_valid(wp) && (wp->w_popup_flags & POPF_HIDDEN) == 0);
- }
- }
-
-*** ../vim-8.1.1451/src/dict.c 2019-05-28 23:08:12.056648758 +0200
---- src/dict.c 2019-06-02 16:15:26.717634023 +0200
-***************
-*** 605,610 ****
---- 605,631 ----
- }
-
- /*
-+ * Get a number item from a dictionary.
-+ * Returns 0 if the entry doesn't exist.
-+ * Give an error if the entry is not a number.
-+ */
-+ varnumber_T
-+ dict_get_number_check(dict_T *d, char_u *key)
-+ {
-+ dictitem_T *di;
-+
-+ di = dict_find(d, key, -1);
-+ if (di == NULL)
-+ return 0;
-+ if (di->di_tv.v_type != VAR_NUMBER)
-+ {
-+ semsg(_(e_invarg2), tv_get_string(&di->di_tv));
-+ return 0;
-+ }
-+ return tv_get_number(&di->di_tv);
-+ }
-+
-+ /*
- * Return an allocated string with the string representation of a Dictionary.
- * May return NULL.
- */
-*** ../vim-8.1.1451/src/proto/dict.pro 2019-04-28 18:04:56.058492178 +0200
---- src/proto/dict.pro 2019-06-02 16:15:30.649613201 +0200
-***************
-*** 25,30 ****
---- 25,31 ----
- dictitem_T *dict_find(dict_T *d, char_u *key, int len);
- char_u *dict_get_string(dict_T *d, char_u *key, int save);
- varnumber_T dict_get_number(dict_T *d, char_u *key);
-+ varnumber_T dict_get_number_check(dict_T *d, char_u *key);
- char_u *dict2string(typval_T *tv, int copyID, int restore_copyID);
- int dict_get_tv(char_u **arg, typval_T *rettv, int evaluate);
- void dict_extend(dict_T *d1, dict_T *d2, char_u *action);
-*** ../vim-8.1.1451/src/window.c 2019-06-01 22:49:23.701685671 +0200
---- src/window.c 2019-06-02 16:46:22.068740562 +0200
-***************
-*** 1368,1373 ****
---- 1368,1376 ----
- win_copy_options(oldp, newp);
- }
-
-+ /*
-+ * Return TRUE if "win" is a global popup or a popup in the current tab page.
-+ */
- static int
- win_valid_popup(win_T *win UNUSED)
- {
-***************
-*** 1418,1423 ****
---- 1421,1431 ----
- if (wp == win)
- return TRUE;
- }
-+ #ifdef FEAT_TEXT_PROP
-+ for (wp = tp->tp_first_popupwin; wp != NULL; wp = wp->w_next)
-+ if (wp == win)
-+ return TRUE;
-+ #endif
- }
- return win_valid_popup(win);
- }
-*** ../vim-8.1.1451/src/testdir/test_popupwin.vim 2019-06-02 15:34:15.458696427 +0200
---- src/testdir/test_popupwin.vim 2019-06-02 16:50:01.087644950 +0200
-***************
-*** 224,229 ****
---- 224,315 ----
- call delete('XtestPopupCorners')
- endfunc
-
-+ func Test_popup_in_tab()
-+ " default popup is local to tab, not visible when in other tab
-+ let winid = popup_create("text", {})
-+ call assert_equal(1, popup_getpos(winid).visible)
-+ tabnew
-+ call assert_equal(0, popup_getpos(winid).visible)
-+ quit
-+ call assert_equal(1, popup_getpos(winid).visible)
-+ popupclear
-+
-+ " global popup is visible in any tab
-+ let winid = popup_create("text", {'tab': -1})
-+ call assert_equal(1, popup_getpos(winid).visible)
-+ tabnew
-+ call assert_equal(1, popup_getpos(winid).visible)
-+ quit
-+ call assert_equal(1, popup_getpos(winid).visible)
-+ popupclear
-+ endfunc
-+
-+ func Test_popup_valid_arguments()
-+ " Zero value is like the property wasn't there
-+ let winid = popup_create("text", {"col": 0})
-+ let pos = popup_getpos(winid)
-+ call assert_inrange(&columns / 2 - 1, &columns / 2 + 1, pos.col)
-+ popupclear
-+
-+ " using cursor column has minimum value of 1
-+ let winid = popup_create("text", {"col": 'cursor-100'})
-+ let pos = popup_getpos(winid)
-+ call assert_equal(1, pos.col)
-+ popupclear
-+
-+ " center
-+ let winid = popup_create("text", {"pos": 'center'})
-+ let pos = popup_getpos(winid)
-+ let around = (&columns - pos.width) / 2
-+ call assert_inrange(around - 1, around + 1, pos.col)
-+ let around = (&lines - pos.height) / 2
-+ call assert_inrange(around - 1, around + 1, pos.line)
-+ popupclear
-+ endfunc
-+
-+ func Test_popup_invalid_arguments()
-+ call assert_fails('call popup_create(666, {})', 'E714:')
-+ popupclear
-+ call assert_fails('call popup_create("text", "none")', 'E715:')
-+ popupclear
-+
-+ call assert_fails('call popup_create("text", {"col": "xxx"})', 'E475:')
-+ popupclear
-+ call assert_fails('call popup_create("text", {"col": "cursor8"})', 'E15:')
-+ popupclear
-+ call assert_fails('call popup_create("text", {"col": "cursor+x"})', 'E15:')
-+ popupclear
-+ call assert_fails('call popup_create("text", {"col": "cursor+8x"})', 'E15:')
-+ popupclear
-+
-+ call assert_fails('call popup_create("text", {"line": "xxx"})', 'E475:')
-+ popupclear
-+ call assert_fails('call popup_create("text", {"line": "cursor8"})', 'E15:')
-+ popupclear
-+ call assert_fails('call popup_create("text", {"line": "cursor+x"})', 'E15:')
-+ popupclear
-+ call assert_fails('call popup_create("text", {"line": "cursor+8x"})', 'E15:')
-+ popupclear
-+
-+ call assert_fails('call popup_create("text", {"pos": "there"})', 'E475:')
-+ popupclear
-+ call assert_fails('call popup_create("text", {"padding": "none"})', 'E714:')
-+ popupclear
-+ call assert_fails('call popup_create("text", {"border": "none"})', 'E714:')
-+ popupclear
-+ call assert_fails('call popup_create("text", {"borderhighlight": "none"})', 'E714:')
-+ popupclear
-+ call assert_fails('call popup_create("text", {"borderchars": "none"})', 'E714:')
-+ popupclear
-+
-+ call assert_fails('call popup_create([{"text": "text"}, 666], {})', 'E715:')
-+ popupclear
-+ call assert_fails('call popup_create([{"text": "text", "props": "none"}], {})', 'E714:')
-+ popupclear
-+ call assert_fails('call popup_create([{"text": "text", "props": ["none"]}], {})', 'E715:')
-+ popupclear
-+ endfunc
-+
- func Test_win_execute_closing_curwin()
- split
- let winid = popup_create('some text', {})
-***************
-*** 593,598 ****
---- 679,693 ----
- call assert_equal(4, pos.line)
- call popup_close(winid)
-
-+ " cursor in first line, popup in line 2
-+ call cursor(1, 1)
-+ redraw
-+ let winid = popup_atcursor(['vim', 'is', 'great'], {})
-+ redraw
-+ let pos = popup_getpos(winid)
-+ call assert_equal(2, pos.line)
-+ call popup_close(winid)
-+
- bwipe!
- endfunc
-
-*** ../vim-8.1.1451/src/version.c 2019-06-02 15:56:11.839730143 +0200
---- src/version.c 2019-06-02 16:51:00.935343965 +0200
-***************
-*** 769,770 ****
---- 769,772 ----
- { /* Add new patch number below this line */
-+ /**/
-+ 1452,
- /**/
-
---
-From "know your smileys":
- :----} You lie like Pinocchio
-
- /// 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 ///