Patch 8.1.1618

2019-07-02 Fir de Conversatie Bram Moolenaar


Patch 8.1.1618
Problem:Amiga-like systems quickly run out of stack.
Solution:   Reserve a Megabyte stack. (Ola Söder, closes #4608)
Files:  src/os_amiga.c


*** ../vim-8.1.1617/src/os_amiga.c  2019-05-28 23:08:12.072648675 +0200
--- src/os_amiga.c  2019-07-02 23:20:33.746270583 +0200
***
*** 61,66 
--- 61,77 
  #endif /* PROTO */
  
  /*
+  * Set stack size to 1 MiB on NG systems. This should be enough even for
+  * hungry syntax HL / plugin combinations. Leave the stack alone on OS 3
+  * and below, those systems might be low on memory.
+  */
+ #if defined(__amigaos4__)
+ static const char* __attribute__((used)) stackcookie = "$STACK: 1048576";
+ #elif defined(__AROS__) || defined(__MORPHOS__)
+ unsigned long __stack = 1048576;
+ #endif
+ 
+ /*
   * At this point TRUE and FALSE are defined as 1L and 0L, but we want 1 and 0.
   */
  #undefTRUE
*** ../vim-8.1.1617/src/version.c   2019-07-02 23:13:20.160427758 +0200
--- src/version.c   2019-07-02 23:21:30.221995764 +0200
***
*** 779,780 
--- 779,782 
  {   /* Add new patch number below this line */
+ /**/
+ 1618,
  /**/

-- 
I'd like to meet the man who invented sex and see what he's working on now.

 /// Bram Moolenaar -- b...@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///

-- 
-- 
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 vim_dev+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/vim_dev/201907022122.x62LMvk3004517%40masaka.moolenaar.net.
For more options, visit https://groups.google.com/d/optout.


Patch 8.1.1617

2019-07-02 Fir de Conversatie Bram Moolenaar


Patch 8.1.1617
Problem:No test for popup window with mask and position fixed.
Solution:   Add a couple of screenshots.  Fix deteced problems.
Files:  src/popupwin.c, src/structs.h, src/testdir/test_popupwin.vim,
src/testdir/dumps/Test_popupwin_mask_1.dump,
src/testdir/dumps/Test_popupwin_mask_2.dump,
src/testdir/dumps/Test_popupwin_mask_3.dump,
src/testdir/dumps/Test_popupwin_mask_4.dump


*** ../vim-8.1.1616/src/popupwin.c  2019-07-01 22:20:57.200052881 +0200
--- src/popupwin.c  2019-07-02 23:12:45.060607518 +0200
***
*** 700,738 
  }
  
  /*
   * Return the height of popup window "wp", including border and padding.
   */
  int
  popup_height(win_T *wp)
  {
  return wp->w_height
!   + wp->w_popup_padding[0] + wp->w_popup_border[0]
+ wp->w_popup_padding[2] + wp->w_popup_border[2];
  }
  
  /*
!  * Return the width of popup window "wp", including border and padding.
   */
  int
  popup_width(win_T *wp)
  {
! return wp->w_width
+ wp->w_popup_padding[3] + wp->w_popup_border[3]
+ wp->w_popup_padding[1] + wp->w_popup_border[1]
!   + wp->w_has_scrollbar;
! }
! 
! /*
!  * Get the padding plus border at the top, adjusted to 1 if there is a title.
!  */
! static int
! popup_top_extra(win_T *wp)
! {
! int   extra = wp->w_popup_border[0] + wp->w_popup_padding[0];
! 
! if (extra == 0 && wp->w_popup_title != NULL && *wp->w_popup_title != NUL)
!   return 1;
! return extra;
  }
  
  /*
--- 700,740 
  }
  
  /*
+  * Get the padding plus border at the top, adjusted to 1 if there is a title.
+  */
+ static int
+ popup_top_extra(win_T *wp)
+ {
+ int   extra = wp->w_popup_border[0] + wp->w_popup_padding[0];
+ 
+ if (extra == 0 && wp->w_popup_title != NULL && *wp->w_popup_title != NUL)
+   return 1;
+ return extra;
+ }
+ 
+ /*
   * Return the height of popup window "wp", including border and padding.
   */
  int
  popup_height(win_T *wp)
  {
  return wp->w_height
!   + popup_top_extra(wp)
+ wp->w_popup_padding[2] + wp->w_popup_border[2];
  }
  
  /*
!  * Return the width of popup window "wp", including border, padding and
!  * scrollbar.
   */
  int
  popup_width(win_T *wp)
  {
! return wp->w_width + wp->w_leftcol
+ wp->w_popup_padding[3] + wp->w_popup_border[3]
+ wp->w_popup_padding[1] + wp->w_popup_border[1]
!   + wp->w_has_scrollbar
!   + wp->w_popup_rightoff;
  }
  
  /*
***
*** 744,749 
--- 746,752 
  linenr_T  lnum;
  int   wrapped = 0;
  int   maxwidth;
+ int   maxspace;
  int   center_vert = FALSE;
  int   center_hor = FALSE;
  int   allow_adjust_left = !wp->w_popup_fixed;
***
*** 758,768 
--- 761,774 
  int   org_width = wp->w_width;
  int   org_height = wp->w_height;
  int   org_leftcol = wp->w_leftcol;
+ int   org_leftoff = wp->w_popup_leftoff;
  int   minwidth;
  
  wp->w_winrow = 0;
  wp->w_wincol = 0;
  wp->w_leftcol = 0;
+ wp->w_popup_leftoff = 0;
+ wp->w_popup_rightoff = 0;
  if (wp->w_popup_pos == POPPOS_CENTER)
  {
// center after computing the size
***
*** 795,801 
  // When centering or right aligned, use maximum width.
  // When left aligned use the space available, but shift to the left when 
we
  // hit the right of the screen.
! maxwidth = Columns - wp->w_wincol - left_extra;
  if (wp->w_maxwidth > 0 && maxwidth > wp->w_maxwidth)
  {
allow_adjust_left = FALSE;
--- 801,808 
  // When centering or right aligned, use maximum width.
  // When left aligned use the space available, but shift to the left when 
we
  // hit the right of the screen.
! maxspace = Columns - wp->w_wincol - left_extra;
! maxwidth = maxspace;
  if (wp->w_maxwidth > 0 && maxwidth > wp->w_maxwidth)
  {
allow_adjust_left = FALSE;
***
*** 868,874 
--- 875,886 
  if (minwidth > 0 && wp->w_width < minwidth)
wp->w_width = minwidth;
  if (wp->w_width > maxwidth)
+ {
+   if (wp->w_width > maxspace)
+   // some columns cut off on the right
+   wp->w_popup_rightoff = wp->w_width - maxspace;
wp->w_width = maxwidth;
+ }
  if (center_hor)
  {
wp->w_wincol = (Columns - wp->w_width - extra_width) / 2;
***
*** 887,895 
else if (wp->w_popup_fixed)
{
// "col" specifies the right edge, but popup doesn't fit, skip some
!   // columns when displaying the window.
!   wp->w_leftcol = -leftoff;
!   wp->w_width += leftoff;
if (wp->w_width < 0)
wp->w_width = 0;
}
--- 899,910 
else if 

ATHENA-Build -> test_diffmode.vim fails running on ppc32 (was Amigabuild)...

2019-07-02 Fir de Conversatie Elimar Riesebieter
* Elimar Riesebieter  [2019-07-02 12:41 +0200]:

 Building vim-8.1.1616 ATHENA variant on ppc32 (linux) euns smooth
 but there is a test failure:
 
 Failures:
 From test_diffmode.vim:
 Found errors in Test_diff_screen():
 Run 1:
 function 
RunTheTest[40]..Test_diff_screen[112]..VerifyInternal[4]..VerifyScreenDump line 
55: See dump file difference: call 
term_dumpdiff("testdir/failed/Test_diff_17.dump", 
"testdir/dumps/Test_diff_17.dump"); difference in line 1: "| 
+0#e05#a8a8a8255@1>a+0#000#ff0| @33||+1&&| 
+0#e05#a8a8a8255@1|a+0#000#ff0| @33"; difference in line 4: "| 
+0#e05#a8a8a8255@1|-+0#4040ff13#af255@34||+1#000#ff0| 
+0#e05#a8a8a8255@1| +0#000#5fd7ff255@34"; difference in line 5: "| 
+0#e05#a8a8a8255@1|e+0#000#ff0|f| @32||+1&&| 
+0#e05#a8a8a8255@1|e+0#000#ff0|f| @32"; difference in line 6: "| 
+0#e05#a8a8a8255@1|x+2#000#ff404010@2| 

Amigabuild -> test_diffmode.vim fails running on ppc32

2019-07-02 Fir de Conversatie Elimar Riesebieter
Building vim-8.1.1616 ATHENA variant on ppc32 (linux) euns smooth
but there is a test failure:

Failures:
From test_diffmode.vim:
Found errors in Test_diff_screen():
Run 1:
function 
RunTheTest[40]..Test_diff_screen[112]..VerifyInternal[4]..VerifyScreenDump line 
55: See dump file difference: call 
term_dumpdiff("testdir/failed/Test_diff_17.dump", 
"testdir/dumps/Test_diff_17.dump"); difference in line 1: "| 
+0#e05#a8a8a8255@1>a+0#000#ff0| @33||+1&&| 
+0#e05#a8a8a8255@1|a+0#000#ff0| @33"; difference in line 4: "| 
+0#e05#a8a8a8255@1|-+0#4040ff13#af255@34||+1#000#ff0| 
+0#e05#a8a8a8255@1| +0#000#5fd7ff255@34"; difference in line 5: "| 
+0#e05#a8a8a8255@1|e+0#000#ff0|f| @32||+1&&| 
+0#e05#a8a8a8255@1|e+0#000#ff0|f| @32"; difference in line 6: "| 
+0#e05#a8a8a8255@1|x+2#000#ff404010@2| 

Re: Patch 8.1.1613

2019-07-02 Fir de Conversatie Elimar Riesebieter
* Bram Moolenaar  [2019-07-01 21:49 +0200]:

> 
> Patch 8.1.1613
> Problem:Popup window test fails with Athena and Motif.
> Solution:   Compute the highlight attribut when the GUI is not active.
> Files:src/syntax.c

That works fine. Thanks a lot.

Elimar
-- 
  On the keyboard of life you have always
  to keep a finger at the escape key;-)

-- 
-- 
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 vim_dev+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/vim_dev/20190702074558.l65ik7culeahjrvy%40toy.home.lxtec.de.
For more options, visit https://groups.google.com/d/optout.