Patch 8.1.1665
Problem:    Crash when popup window with mask is below the screen.
Solution:   Correct boundary check.
Files:      src/popupwin.c, src/testdir/test_popupwin.vim,
            src/testdir/dumps/Test_popupwin_mask_5.dump


*** ../vim-8.1.1664/src/popupwin.c      2019-07-12 13:59:16.771261635 +0200
--- src/popupwin.c      2019-07-12 16:01:54.503541838 +0200
***************
*** 2323,2330 ****
            --lines;
            if (lines < 0)
                lines = 0;
!           for (line = lines; line < linee && line < screen_Rows; ++line)
!               for (col = cols; col < cole && col < screen_Columns; ++col)
                    popup_transparent[(line + wp->w_winrow) * screen_Columns
                                                   + col + wp->w_wincol] = val;
        }
--- 2323,2332 ----
            --lines;
            if (lines < 0)
                lines = 0;
!           for (line = lines; line < linee
!                                 && line + wp->w_winrow < screen_Rows; ++line)
!               for (col = cols; col < cole
!                               && col + wp->w_wincol < screen_Columns; ++col)
                    popup_transparent[(line + wp->w_winrow) * screen_Columns
                                                   + col + wp->w_wincol] = val;
        }
*** ../vim-8.1.1664/src/testdir/test_popupwin.vim       2019-07-09 
20:25:19.911815741 +0200
--- src/testdir/test_popupwin.vim       2019-07-12 15:55:37.453321665 +0200
***************
*** 486,491 ****
--- 486,495 ----
    call term_sendkeys(buf, ":call popup_move(winidb, {'pos': 'topright', 
'col': 12})\<CR>")
    call VerifyScreenDump(buf, 'Test_popupwin_mask_4', {})
  
+   call term_sendkeys(buf, ":call popup_move(winid, {'pos': 'topright', 'col': 
12, 'line': 11})\<CR>")
+   call term_sendkeys(buf, ":call popup_move(winidb, {'pos': 'topleft', 'col': 
42, 'line': 11})\<CR>")
+   call VerifyScreenDump(buf, 'Test_popupwin_mask_5', {})
+ 
    " clean up
    call StopVimInTerminal(buf)
    call delete('XtestPopupMask')
*** ../vim-8.1.1664/src/testdir/dumps/Test_popupwin_mask_5.dump 2019-07-12 
16:05:11.266641091 +0200
--- src/testdir/dumps/Test_popupwin_mask_5.dump 2019-07-12 15:55:47.561272630 
+0200
***************
*** 0 ****
--- 1,13 ----
+ 
>1+0&#ffffff0|2|3|4|5|6|7|8|9|1|0|1@2|2|1|3|1|4|1|5|1|6|1|7|1|8|1|9|2|0|2|1|2@2|3|2|4|2|5|2|6|2|7|2|8|2|9|3|0|3|1|3|2|3@2|4|3|5|3|6|3|7|3|8|3|9|4|0|4|1|4|2
+ 
|1|2|3|4|5|6|7|8|9|1|0|1@2|2|1|3|1|4|1|5|1|6|1|7|1|8|1|9|2|0|2|1|2@2|3|2|4|2|5|2|6|2|7|2|8|2|9|3|0|3|1|3|2|3@2|4|3|5|3|6|3|7|3|8|3|9|4|0|4|1|4|2
+ 
|1|2|3|4|5|6|7|8|9|1|0|1@2|2|1|3|x+0#0000001#ffd7ff255@8|8+0#0000000#ffffff0|1|9|2|0|2|1|2@2|3|2|4|2|5|2|6|2|7|2|8|2|9|3|0|3|1|3|2|3@2|4|3|5|3|6|3|7|3|8|3|9|4|0|4|1|4|2
+ 
|1|2|3|4|5|6|7|8|9|1|0|1@2|2|1|3|y+0#0000001#ffd7ff255@8|8+0#0000000#ffffff0|1|9|2|0|2|1|2@2|3|2|4|2|5|2|6|2|7|2|8|2|9|3|0|3|1|3|2|3@2|4|3|5|3|6|3|7|3|8|3|9|4|0|4|1|4|2
+ 
|1|2|3|4|5|6|7|8|9|1|0|1@2|2|1|3|1|4|1|5|1|6|1|7|1|8|1|9|2|0|2|1|2@2|3|2|4|2|5|2|6|2|7|2|8|2|9|3|0|3|1|3|2|3@2|4|3|5|3|6|3|7|3|8|3|9|4|0|4|1|4|2
+ 
|1|2|3|4|5|6|7|8|9|1|0|1@2|2|1|3|1|4|1|5|1|6|1|7|1|8|1|9|2|0|2|1|2@2|3|2|4|2|5|2|6|2|7|2|8|2|9|3|0|3|1|3|2|3@2|4|3|5|3|6|3|7|3|8|3|9|4|0|4|1|4|2
+ 
|1|2|3|4|5|6|7|8|9|1|0|1@2|2|1|3|1|4|1|5|1|6|1|7|1|8|1|9|2|0|2|1|2@2|3|2|4|2|5|2|6|2|7|2|8|2|9|3|0|3|1|3|2|3@2|4|3|5|3|6|3|7|3|8|3|9|4|0|4|1|4|2
+ 
|1|2|3|4|5|6|7|8|9|1|0|1@2|2|1|3|1|4|1|5|1|6|1|7|1|8|1|9|2|0|2|1|2@2|3|2|4|2|5|2|6|2|7|2|8|2|9|3|0|3|1|3|2|3@2|4|3|5|3|6|3|7|3|8|3|9|4|0|4|1|4|2
+ 
|1|2|3|4|5|6|7|8|9|1|0|1@2|2|1|3|1|4|1|5|1|6|1|7|1|8|1|9|2|0|2|1|2@2|3|2|4|2|5|2|6|2|7|2|8|2|9|3|0|3|1|3|2|3@2|4|3|5|3|6|3|7|3|8|3|9|4|0|4|1|4|2
+ 
|1|2|3|4|5|6|7|8|9|1|0|1@2|2|1|3|1|4|1|5|1|6|1|7|1|8|1|9|2|0|2|1|2@2|3|2|4|2|5|2|6|2|7|2|8|2|9|3|0|3|1|3|2|3@2|4|3|5|3|6|3|7|3|8|3|9|4|0|4|1|4|2
+ | 
+0&#e0e0e08@11|1+0&#ffffff0@1|2|1|3|1|4|1|5|1|6|1|7|1|8|1|9|2|0|2|1|2@2|3|2|4|2|5|2|6|═+0#0000001#ffd7ff255@13|X|4+0#0000000#ffffff0|3|5|3|6|3|7|3|8|3|9|4|0|4|1|4|2
+ |o+0&#e0e0e08|m|e| |5+0&#ffffff0|6|7|t+0&#e0e0e08| 
@3|1+0&#ffffff0@1|2|1|3|1|4|1|5|1|6|1|7|1|8|1|9|2|0|2|1|2@2|3|2|4|2|5|║+0#0000001#ffd7ff255|
 @4|2+0#0000000#ffffff0|9|3| 
+0#0000001#ffd7ff255@6|║|4+0#0000000#ffffff0|3|5|3|6|3|7|3|8|3|9|4|0|4|1|4|2
+ |:|c|t+0&#e0e0e08|h|l+0&#ffffff0| |p|l+0&#e0e0e08|i|n|e| 
|m+0&#ffffff0|o|v|e|(|w|i|n|i|d|b|,| |{|'|p|o|s|'|:| 
|'|t|o|p|l|e|f|t|║+0#0000001#ffd7ff255| 
|j|u|s|t|l+0#0000000#ffffff0|'|:|e+0#0000001#ffd7ff255| |l|i|n|e| 
|║|,+0#0000000#ffffff0|1| @10|T|o|p| 
*** ../vim-8.1.1664/src/version.c       2019-07-12 15:37:09.250799642 +0200
--- src/version.c       2019-07-12 16:04:10.994915602 +0200
***************
*** 779,780 ****
--- 779,782 ----
  {   /* Add new patch number below this line */
+ /**/
+     1665,
  /**/

-- 
If your life is a hard drive,
Christ can be your backup.

 /// Bram Moolenaar -- [email protected] -- 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    ///

-- 
-- 
You received this message from the "vim_dev" maillist.
Do not top-post! Type your reply below the text you are replying to.
For more information, visit http://www.vim.org/maillist.php

--- 
You received this message because you are subscribed to the Google Groups 
"vim_dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/vim_dev/201907121406.x6CE6ew3017739%40masaka.moolenaar.net.
For more options, visit https://groups.google.com/d/optout.

Raspunde prin e-mail lui