Patch 8.1.2243
Problem:    Typos in comments.
Solution:   Fix the typos. (Dominique Pelle, closes #5160)  Also adjust
            formatting a bit.
Files:      src/autocmd.c, src/buffer.c, src/cindent.c, src/crypt.c,
            src/diff.c, src/getchar.c, src/globals.h, src/gui_gtk_x11.c,
            src/highlight.c, src/insexpand.c, src/macros.h, src/map.c,
            src/memline.c, src/message.c, src/option.c, src/os_unix.c,
            src/pty.c, src/quickfix.c, src/regexp_nfa.c, src/register.c,
            src/spellsuggest.c, src/structs.h, src/textprop.c, src/ui.c,
            src/undo.c, src/vim.h, src/viminfo.c


*** ../vim-8.1.2242/src/autocmd.c       2019-10-26 16:21:34.511468348 +0200
--- src/autocmd.c       2019-11-02 22:51:27.145907339 +0100
***************
*** 1584,1591 ****
            curbuf = curwin->w_buffer;
            if (win_valid(aco->save_prevwin))
                prevwin = aco->save_prevwin;
!           // In case the autocommand move the cursor to a position that that
!           // not exist in curbuf.
            check_cursor();
        }
      }
--- 1584,1591 ----
            curbuf = curwin->w_buffer;
            if (win_valid(aco->save_prevwin))
                prevwin = aco->save_prevwin;
!           // In case the autocommand moves the cursor to a position that
!           // does not exist in curbuf.
            check_cursor();
        }
      }
*** ../vim-8.1.2242/src/buffer.c        2019-10-27 05:12:38.284773720 +0100
--- src/buffer.c        2019-11-02 22:51:27.145907339 +0100
***************
*** 4951,4957 ****
   * When resolving a link both "*sfname" and "*ffname" will point to the same
   * allocated memory.
   * The "*ffname" and "*sfname" pointer values on call will not be freed.
!  * Note that the resulting "*ffname" pointer should be considered not 
allocaed.
   */
      void
  fname_expand(
--- 4951,4957 ----
   * When resolving a link both "*sfname" and "*ffname" will point to the same
   * allocated memory.
   * The "*ffname" and "*sfname" pointer values on call will not be freed.
!  * Note that the resulting "*ffname" pointer should be considered not 
allocated.
   */
      void
  fname_expand(
*** ../vim-8.1.2242/src/cindent.c       2019-10-09 22:52:48.992043788 +0200
--- src/cindent.c       2019-11-02 22:51:27.145907339 +0100
***************
*** 1778,1787 ****
      // should be located.
      buf->b_ind_continuation = sw;
  
!     // Spaces from the indent of the line with an unclosed parentheses.
      buf->b_ind_unclosed = sw * 2;
  
!     // Spaces from the indent of the line with an unclosed parentheses, which
      // itself is also unclosed.
      buf->b_ind_unclosed2 = sw;
  
--- 1778,1787 ----
      // should be located.
      buf->b_ind_continuation = sw;
  
!     // Spaces from the indent of the line with an unclosed parenthesis.
      buf->b_ind_unclosed = sw * 2;
  
!     // Spaces from the indent of the line with an unclosed parenthesis, which
      // itself is also unclosed.
      buf->b_ind_unclosed2 = sw;
  
***************
*** 1795,1801 ****
      buf->b_ind_unclosed_wrapped = 0;
  
      // Suppress ignoring white space when lining up with the character after
!     // an unclosed parentheses.
      buf->b_ind_unclosed_whiteok = 0;
  
      // Indent a closing parentheses under the line start of the matching
--- 1795,1801 ----
      buf->b_ind_unclosed_wrapped = 0;
  
      // Suppress ignoring white space when lining up with the character after
!     // an unclosed parenthesis.
      buf->b_ind_unclosed_whiteok = 0;
  
      // Indent a closing parentheses under the line start of the matching
***************
*** 2725,2731 ****
                if (curwin->w_cursor.lnum <= ourscope)
                {
                    // We reached end of scope:
!                   // If looking for a enum or structure initialization
                    // go further back:
                    // If it is an initializer (enum xxx or xxx =), then
                    // don't add ind_continuation, otherwise it is a variable
--- 2725,2731 ----
                if (curwin->w_cursor.lnum <= ourscope)
                {
                    // We reached end of scope:
!                   // If looking for an enum or structure initialization
                    // go further back:
                    // If it is an initializer (enum xxx or xxx =), then
                    // don't add ind_continuation, otherwise it is a variable
***************
*** 2785,2791 ****
                            if (terminated == ',')
                                break;
  
!                           // if it es a enum declaration or an assignment,
                            // we are done.
                            if (terminated != ';' && cin_isinit())
                                break;
--- 2785,2791 ----
                            if (terminated == ',')
                                break;
  
!                           // if it is an enum declaration or an assignment,
                            // we are done.
                            if (terminated != ';' && cin_isinit())
                                break;
***************
*** 3083,3089 ****
                //   123,
                //   sizeof
                //        here
!               // Otherwise check whether it is a enumeration or structure
                // initialisation (not indented) or a variable declaration
                // (indented).
                terminated = cin_isterminated(l, FALSE, TRUE);
--- 3083,3089 ----
                //   123,
                //   sizeof
                //        here
!               // Otherwise check whether it is an enumeration or structure
                // initialisation (not indented) or a variable declaration
                // (indented).
                terminated = cin_isterminated(l, FALSE, TRUE);
*** ../vim-8.1.2242/src/crypt.c 2019-05-28 23:08:12.052648779 +0200
--- src/crypt.c 2019-11-02 22:51:27.145907339 +0100
***************
*** 206,212 ****
  }
  
  /*
!  * Get crypt method specifc length of the file header in bytes.
   */
      int
  crypt_get_header_len(int method_nr)
--- 206,212 ----
  }
  
  /*
!  * Get crypt method specific length of the file header in bytes.
   */
      int
  crypt_get_header_len(int method_nr)
*** ../vim-8.1.2242/src/diff.c  2019-10-06 22:00:08.293244132 +0200
--- src/diff.c  2019-11-02 22:51:27.145907339 +0100
***************
*** 419,425 ****
                        off = 0;
                        if (last < line2)
                        {
!                           /* 2. delete at end of of diff */
                            dp->df_count[idx] -= last - lnum_deleted + 1;
                            if (dp->df_next != NULL
                                    && dp->df_next->df_lnum[idx] - 1 <= line2)
--- 419,425 ----
                        off = 0;
                        if (last < line2)
                        {
!                           /* 2. delete at end of diff */
                            dp->df_count[idx] -= last - lnum_deleted + 1;
                            if (dp->df_next != NULL
                                    && dp->df_next->df_lnum[idx] - 1 <= line2)
*** ../vim-8.1.2242/src/getchar.c       2019-10-22 21:54:28.485327401 +0200
--- src/getchar.c       2019-11-02 22:51:27.145907339 +0100
***************
*** 1504,1510 ****
  }
  
  /*
!  * updatescipt() is called when a character can be written into the script 
file
   * or when we have waited some time for a character (c == 0)
   *
   * All the changed memfiles are synced if c == 0 or when the number of typed
--- 1504,1510 ----
  }
  
  /*
!  * updatescript() is called when a character can be written into the script 
file
   * or when we have waited some time for a character (c == 0)
   *
   * All the changed memfiles are synced if c == 0 or when the number of typed
*** ../vim-8.1.2242/src/globals.h       2019-10-24 14:59:58.035079639 +0200
--- src/globals.h       2019-11-02 22:51:27.145907339 +0100
***************
*** 99,105 ****
  // Array with size Rows x Columns containing zindex of popups.
  EXTERN short  *popup_mask INIT(= NULL);
  EXTERN short  *popup_mask_next INIT(= NULL);
! // Array with flags for tansparent cells of current popup.
  EXTERN char   *popup_transparent INIT(= NULL);
  
  // Flag set to TRUE when popup_mask needs to be updated.
--- 99,105 ----
  // Array with size Rows x Columns containing zindex of popups.
  EXTERN short  *popup_mask INIT(= NULL);
  EXTERN short  *popup_mask_next INIT(= NULL);
! // Array with flags for transparent cells of current popup.
  EXTERN char   *popup_transparent INIT(= NULL);
  
  // Flag set to TRUE when popup_mask needs to be updated.
***************
*** 393,399 ****
   * character just after the match in the last line.
   */
  EXTERN int    highlight_match INIT(= FALSE);  // show search match pos
! EXTERN linenr_T       search_match_lines;             // lines of of matched 
string
  EXTERN colnr_T        search_match_endcol;            // col nr of match end
  #ifdef FEAT_SEARCH_EXTRA
  EXTERN linenr_T       search_first_line INIT(= 0);      // for 
:{FIRST},{last}s/pat
--- 393,399 ----
   * character just after the match in the last line.
   */
  EXTERN int    highlight_match INIT(= FALSE);  // show search match pos
! EXTERN linenr_T       search_match_lines;             // lines of matched 
string
  EXTERN colnr_T        search_match_endcol;            // col nr of match end
  #ifdef FEAT_SEARCH_EXTRA
  EXTERN linenr_T       search_first_line INIT(= 0);      // for 
:{FIRST},{last}s/pat
*** ../vim-8.1.2242/src/gui_gtk_x11.c   2019-09-15 13:16:55.208317441 +0200
--- src/gui_gtk_x11.c   2019-11-02 22:51:27.145907339 +0100
***************
*** 2895,2901 ****
       *
       * Naturally, configure events propagated to here like that are fallacious
       * and, as a matter of fact, they trigger a geometric collapse of
!      * gui.drawarea in fullscreen and miximized modes.
       *
       * To filter out such nuisance events, we are making use of the fact that
       * the field send_event of such GdkEventConfigures is set to FALSE in
--- 2895,2901 ----
       *
       * Naturally, configure events propagated to here like that are fallacious
       * and, as a matter of fact, they trigger a geometric collapse of
!      * gui.drawarea in fullscreen and maximized modes.
       *
       * To filter out such nuisance events, we are making use of the fact that
       * the field send_event of such GdkEventConfigures is set to FALSE in
*** ../vim-8.1.2242/src/highlight.c     2019-10-13 16:43:35.956359658 +0200
--- src/highlight.c     2019-11-02 22:51:27.149907323 +0100
***************
*** 3682,3688 ****
        return -1;
      if (id < -1 || id == 0)
      {
!       semsg(_("E799: Invalid ID: %d (must be greater than or equal to 1)"), 
id);
        return -1;
      }
      if (id != -1)
--- 3682,3689 ----
        return -1;
      if (id < -1 || id == 0)
      {
!       semsg(_("E799: Invalid ID: %d (must be greater than or equal to 1)"),
!                                                                          id);
        return -1;
      }
      if (id != -1)
***************
*** 4346,4352 ****
   * After end, check for start/end of next match.
   * When another match, have to check for start again.
   * Watch out for matching an empty string!
!  * Return the udpated search_attr.
   */
      int
  update_search_hl(
--- 4347,4353 ----
   * After end, check for start/end of next match.
   * When another match, have to check for start again.
   * Watch out for matching an empty string!
!  * Return the updated search_attr.
   */
      int
  update_search_hl(
*** ../vim-8.1.2242/src/insexpand.c     2019-10-18 20:53:30.697741631 +0200
--- src/insexpand.c     2019-11-02 22:51:27.149907323 +0100
***************
*** 1612,1618 ****
  #ifdef FEAT_SPELL
        spell_bad_len = 0;      // need to redetect bad word
  #endif
!       // Matches were cleared, need to search for them now.  Befor drawing
        // the popup menu display the changed text before the cursor.  Set
        // "compl_restarting" to avoid that the first match is inserted.
        pum_call_update_screen();
--- 1612,1618 ----
  #ifdef FEAT_SPELL
        spell_bad_len = 0;      // need to redetect bad word
  #endif
!       // Matches were cleared, need to search for them now.  Before drawing
        // the popup menu display the changed text before the cursor.  Set
        // "compl_restarting" to avoid that the first match is inserted.
        pum_call_update_screen();
***************
*** 2858,2864 ****
  
            //  Buffers other than curbuf are scanned from the beginning or the
            //  end but never from the middle, thus setting nowrapscan in this
!           //  buffers is a good idea, on the other hand, we always set
            //  wrapscan for curbuf to avoid missing matches -- Acevedo,Webb
            save_p_ws = p_ws;
            if (ins_buf != curbuf)
--- 2858,2864 ----
  
            //  Buffers other than curbuf are scanned from the beginning or the
            //  end but never from the middle, thus setting nowrapscan in this
!           //  buffer is a good idea, on the other hand, we always set
            //  wrapscan for curbuf to avoid missing matches -- Acevedo,Webb
            save_p_ws = p_ws;
            if (ins_buf != curbuf)
*** ../vim-8.1.2242/src/macros.h        2019-10-06 22:00:08.293244132 +0200
--- src/macros.h        2019-11-02 22:51:27.149907323 +0100
***************
*** 335,341 ****
        } \
      } while (0)
  
! /* Wether a command index indicates a user command. */
  #define IS_USER_CMDIDX(idx) ((int)(idx) < 0)
  
  // Give an error in curwin is a popup window and evaluate to TRUE.
--- 335,341 ----
        } \
      } while (0)
  
! /* Whether a command index indicates a user command. */
  #define IS_USER_CMDIDX(idx) ((int)(idx) < 0)
  
  // Give an error in curwin is a popup window and evaluate to TRUE.
*** ../vim-8.1.2242/src/map.c   2019-10-16 18:34:55.840287588 +0200
--- src/map.c   2019-11-02 22:51:27.149907323 +0100
***************
*** 1924,1930 ****
      save_name = sourcing_name;
      sourcing_name = (char_u *)"mappings"; // avoids giving error messages
  
!     // This this once for each buffer, and then once for global
      // mappings/abbreviations with bp == NULL
      for (bp = firstbuf; ; bp = bp->b_next)
      {
--- 1924,1930 ----
      save_name = sourcing_name;
      sourcing_name = (char_u *)"mappings"; // avoids giving error messages
  
!     // Do this once for each buffer, and then once for global
      // mappings/abbreviations with bp == NULL
      for (bp = firstbuf; ; bp = bp->b_next)
      {
*** ../vim-8.1.2242/src/memline.c       2019-10-26 20:56:04.207611508 +0200
--- src/memline.c       2019-11-02 22:51:27.149907323 +0100
***************
*** 2318,2324 ****
        ret = FALSE;
  
  #if defined(UNIX) || defined(MSWIN)
!     // process must known and not be running
      pid = char_to_long(b0.b0_pid);
      if (pid == 0L || mch_process_running(pid))
        ret = FALSE;
--- 2318,2324 ----
        ret = FALSE;
  
  #if defined(UNIX) || defined(MSWIN)
!     // process must be known and not be running
      pid = char_to_long(b0.b0_pid);
      if (pid == 0L || mch_process_running(pid))
        ret = FALSE;
*** ../vim-8.1.2242/src/message.c       2019-10-17 22:58:59.062497024 +0200
--- src/message.c       2019-11-02 22:51:27.149907323 +0100
***************
*** 1616,1622 ****
  msg_outtrans_special(
      char_u    *strstart,
      int               from,   // TRUE for lhs of a mapping
!     int               maxlen) // screen columns, 0 for unlimeted
  {
      char_u    *str = strstart;
      int               retval = 0;
--- 1616,1622 ----
  msg_outtrans_special(
      char_u    *strstart,
      int               from,   // TRUE for lhs of a mapping
!     int               maxlen) // screen columns, 0 for unlimited
  {
      char_u    *str = strstart;
      int               retval = 0;
*** ../vim-8.1.2242/src/option.c        2019-10-27 05:12:38.284773720 +0100
--- src/option.c        2019-11-02 22:51:27.149907323 +0100
***************
*** 4877,4883 ****
            home_replace(NULL, *valuep, buf, size, FALSE);
  
            // If the option value is longer than MAXPATHL, we need to append
!           // earch comma separated part of the option separately, so that it
            // can be expanded when read back.
            if (size >= MAXPATHL && (flags & P_COMMA) != 0
                                           && vim_strchr(*valuep, ',') != NULL)
--- 4877,4883 ----
            home_replace(NULL, *valuep, buf, size, FALSE);
  
            // If the option value is longer than MAXPATHL, we need to append
!           // each comma separated part of the option separately, so that it
            // can be expanded when read back.
            if (size >= MAXPATHL && (flags & P_COMMA) != 0
                                           && vim_strchr(*valuep, ',') != NULL)
*** ../vim-8.1.2242/src/os_unix.c       2019-10-24 17:43:21.617892922 +0200
--- src/os_unix.c       2019-11-02 22:51:27.153907307 +0100
***************
*** 877,883 ****
  static JMP_BUF lc_jump_env;
  
  # ifdef SIGHASARG
! // Caught signal number, 0 when no was signal caught; used for mch_libcall().
  // Volatile because it is used in signal handlers.
  static volatile sig_atomic_t lc_signal;
  # endif
--- 877,883 ----
  static JMP_BUF lc_jump_env;
  
  # ifdef SIGHASARG
! // Caught signal number, 0 when no signal was caught; used for mch_libcall().
  // Volatile because it is used in signal handlers.
  static volatile sig_atomic_t lc_signal;
  # endif
***************
*** 3067,3073 ****
        return 0;
  #ifdef VMS
      /* Like on Unix system file can have executable rights but not necessarily
!      * be an executable, but on Unix is not a default for an ordianry file to
       * have an executable flag - on VMS it is in most cases.
       * Therefore, this check does not have any sense - let keep us to the
       * conventions instead:
--- 3067,3073 ----
        return 0;
  #ifdef VMS
      /* Like on Unix system file can have executable rights but not necessarily
!      * be an executable, but on Unix is not a default for an ordinary file to
       * have an executable flag - on VMS it is in most cases.
       * Therefore, this check does not have any sense - let keep us to the
       * conventions instead:
*** ../vim-8.1.2242/src/pty.c   2019-09-10 21:27:15.175646978 +0200
--- src/pty.c   2019-11-02 22:51:27.153907307 +0100
***************
*** 15,21 ****
   * The parts that are not used in Vim have been deleted.
   * See the "screen" sources for the complete stuff.
   *
!  * This specific version is distibuted under the Vim license (attribution by
   * Juergen Weigert), the GPL applies to the original version, see the
   * copyright notice below.
   */
--- 15,21 ----
   * The parts that are not used in Vim have been deleted.
   * See the "screen" sources for the complete stuff.
   *
!  * This specific version is distributed under the Vim license (attribution by
   * Juergen Weigert), the GPL applies to the original version, see the
   * copyright notice below.
   */
*** ../vim-8.1.2242/src/quickfix.c      2019-10-26 16:48:35.400890880 +0200
--- src/quickfix.c      2019-11-02 22:51:27.153907307 +0100
***************
*** 1861,1867 ****
  
      // If the current entry is not the last entry, delete entries beyond
      // the current entry.  This makes it possible to browse in a tree-like
!     // way with ":grep'.
      while (qi->qf_listcount > qi->qf_curlist + 1)
        qf_free(&qi->qf_lists[--qi->qf_listcount]);
  
--- 1861,1867 ----
  
      // If the current entry is not the last entry, delete entries beyond
      // the current entry.  This makes it possible to browse in a tree-like
!     // way with ":grep".
      while (qi->qf_listcount > qi->qf_curlist + 1)
        qf_free(&qi->qf_lists[--qi->qf_listcount]);
  
***************
*** 5224,5230 ****
        int             *errornr)
  {
      if (qf_entry_after_pos(qfp, pos, linewise))
!       // First entry is after postion 'pos'
        return qfp;
  
      // Find the entry just before or at the position 'pos'
--- 5224,5230 ----
        int             *errornr)
  {
      if (qf_entry_after_pos(qfp, pos, linewise))
!       // First entry is after position 'pos'
        return qfp;
  
      // Find the entry just before or at the position 'pos'
*** ../vim-8.1.2242/src/regexp_nfa.c    2019-05-28 23:08:12.076648654 +0200
--- src/regexp_nfa.c    2019-11-02 22:51:27.153907307 +0100
***************
*** 3213,3219 ****
  
      if (nfa_calc_size == FALSE)
      {
!       // Allocate space for the stack. Max states on the stack: "nstate'.
        stack = ALLOC_MULT(Frag_T, nstate + 1);
        if (stack == NULL)
            return NULL;
--- 3213,3219 ----
  
      if (nfa_calc_size == FALSE)
      {
!       // Allocate space for the stack. Max states on the stack: "nstate".
        stack = ALLOC_MULT(Frag_T, nstate + 1);
        if (stack == NULL)
            return NULL;
*** ../vim-8.1.2242/src/register.c      2019-10-26 17:33:00.033437181 +0200
--- src/register.c      2019-10-31 17:21:49.926938649 +0100
***************
*** 899,906 ****
            *rp = ((clip_unnamed & CLIP_UNNAMED_PLUS) && clip_plus.available)
                                                                  ? '+' : '*';
        else
!           *rp = ((clip_unnamed_saved & CLIP_UNNAMED_PLUS) && 
clip_plus.available)
!                                                                 ? '+' : '*';
      }
      if (!clip_star.available && *rp == '*')
        *rp = 0;
--- 899,906 ----
            *rp = ((clip_unnamed & CLIP_UNNAMED_PLUS) && clip_plus.available)
                                                                  ? '+' : '*';
        else
!           *rp = ((clip_unnamed_saved & CLIP_UNNAMED_PLUS)
!                                          && clip_plus.available) ? '+' : '*';
      }
      if (!clip_star.available && *rp == '*')
        *rp = 0;
***************
*** 1288,1294 ****
                && !oap->block_mode
                && yanklines == 1)
            yanklines = 0;
!       // Some versions of Vi use ">=" here, some don't... 
        if (yanklines > p_report)
        {
            char namebuf[100];
--- 1288,1294 ----
                && !oap->block_mode
                && yanklines == 1)
            yanklines = 0;
!       // Some versions of Vi use ">=" here, some don't...
        if (yanklines > p_report)
        {
            char namebuf[100];
*** ../vim-8.1.2242/src/spellsuggest.c  2019-10-06 22:00:08.301244080 +0200
--- src/spellsuggest.c  2019-11-02 22:51:27.153907307 +0100
***************
*** 990,996 ****
      {
        if (sps_flags & SPS_BEST)
            // Adjust the word score for the suggestions found so far for how
!           // they sounds like.
            rescore_suggestions(su);
  
        // While going through the soundfold tree "su_maxscore" is the score
--- 990,996 ----
      {
        if (sps_flags & SPS_BEST)
            // Adjust the word score for the suggestions found so far for how
!           // they sound like.
            rescore_suggestions(su);
  
        // While going through the soundfold tree "su_maxscore" is the score
*** ../vim-8.1.2242/src/structs.h       2019-10-24 14:59:58.035079639 +0200
--- src/structs.h       2019-11-02 22:51:27.153907307 +0100
***************
*** 3497,3503 ****
  #ifdef FEAT_GUI_MAC
  //  MenuHandle        id;
  //  short     index;              // the item index within the father menu
!     short     menu_id;            // the menu id to which this item belong
      short     submenu_id;         // the menu id of the children (could be
                                    // get through some tricks)
      MenuHandle        menu_handle;
--- 3497,3503 ----
  #ifdef FEAT_GUI_MAC
  //  MenuHandle        id;
  //  short     index;              // the item index within the father menu
!     short     menu_id;            // the menu id to which this item belongs
      short     submenu_id;         // the menu id of the children (could be
                                    // get through some tricks)
      MenuHandle        menu_handle;
*** ../vim-8.1.2242/src/textprop.c      2019-10-25 21:49:35.761964719 +0200
--- src/textprop.c      2019-11-02 22:51:27.153907307 +0100
***************
*** 12,24 ****
   *
   * TODO:
   * - Adjust text property column and length when text is inserted/deleted.
-  *   -> :substitute with multiple matches, issue #4427
   *   -> a :substitute with a multi-line match
   *   -> search for changed_bytes() from misc1.c
   *   -> search for mark_col_adjust()
   * - Perhaps we only need TP_FLAG_CONT_NEXT and can drop TP_FLAG_CONT_PREV?
!  * - Add an arrray for global_proptypes, to quickly lookup a prop type by ID
!  * - Add an arrray for b_proptypes, to quickly lookup a prop type by ID
   * - Checking the text length to detect text properties is slow.  Use a flag 
in
   *   the index, like DB_MARKED?
   * - Also test line2byte() with many lines, so that ml_updatechunk() is taken
--- 12,23 ----
   *
   * TODO:
   * - Adjust text property column and length when text is inserted/deleted.
   *   -> a :substitute with a multi-line match
   *   -> search for changed_bytes() from misc1.c
   *   -> search for mark_col_adjust()
   * - Perhaps we only need TP_FLAG_CONT_NEXT and can drop TP_FLAG_CONT_PREV?
!  * - Add an array for global_proptypes, to quickly lookup a prop type by ID
!  * - Add an array for b_proptypes, to quickly lookup a prop type by ID
   * - Checking the text length to detect text properties is slow.  Use a flag 
in
   *   the index, like DB_MARKED?
   * - Also test line2byte() with many lines, so that ml_updatechunk() is taken
***************
*** 126,132 ****
   * When the argument is not used or "bufnr" is not present then "buf" is
   * unchanged.
   * If "bufnr" is valid or not present return OK.
!  * When "arg" is not a dict or "bufnr" is invalide return FAIL.
   */
      static int
  get_bufnr_from_arg(typval_T *arg, buf_T **buf)
--- 125,131 ----
   * When the argument is not used or "bufnr" is not present then "buf" is
   * unchanged.
   * If "bufnr" is valid or not present return OK.
!  * When "arg" is not a dict or "bufnr" is invalid return FAIL.
   */
      static int
  get_bufnr_from_arg(typval_T *arg, buf_T **buf)
*** ../vim-8.1.2242/src/ui.c    2019-09-21 23:09:00.979830687 +0200
--- src/ui.c    2019-10-31 17:22:20.898774154 +0100
***************
*** 913,919 ****
  
      if (clip_did_set_selection)
      {
!       clip_unnamed = FALSE;
        clip_did_set_selection = FALSE;
      }
  }
--- 913,919 ----
  
      if (clip_did_set_selection)
      {
!       clip_unnamed = 0;
        clip_did_set_selection = FALSE;
      }
  }
***************
*** 941,947 ****
      {
        clip_did_set_selection = TRUE;
        clip_unnamed = clip_unnamed_saved;
!       clip_unnamed_saved = FALSE;
        if (clipboard_needs_update)
        {
            /* only store something in the clipboard,
--- 941,947 ----
      {
        clip_did_set_selection = TRUE;
        clip_unnamed = clip_unnamed_saved;
!       clip_unnamed_saved = 0;
        if (clipboard_needs_update)
        {
            /* only store something in the clipboard,
*** ../vim-8.1.2242/src/undo.c  2019-10-27 05:12:38.288773701 +0100
--- src/undo.c  2019-11-02 22:51:27.153907307 +0100
***************
*** 341,347 ****
  }
  
  /*
!  * Get the undolevle value for the current buffer.
   */
      static long
  get_undolevel(void)
--- 341,347 ----
  }
  
  /*
!  * Get the undolevel value for the current buffer.
   */
      static long
  get_undolevel(void)
*** ../vim-8.1.2242/src/vim.h   2019-10-29 04:12:38.620582834 +0100
--- src/vim.h   2019-11-02 22:51:27.153907307 +0100
***************
*** 325,331 ****
  typedef unsigned int  int_u;
  
  // Older systems do not have support for long long
! // use a typedef instead of hadcoded long long
  #ifdef HAVE_NO_LONG_LONG
   typedef long long_long_T;
   typedef long unsigned long_long_u_T;
--- 325,331 ----
  typedef unsigned int  int_u;
  
  // Older systems do not have support for long long
! // use a typedef instead of hard-coded long long
  #ifdef HAVE_NO_LONG_LONG
   typedef long long_long_T;
   typedef long unsigned long_long_u_T;
*** ../vim-8.1.2242/src/viminfo.c       2019-10-27 05:12:38.288773701 +0100
--- src/viminfo.c       2019-11-02 22:51:27.157907293 +0100
***************
*** 2307,2313 ****
                        else
                        {
                            // No timestamp, must be written by an older Vim.
!                           // Assume all remaining buffers are older then
                            // ours.
                            while (count < num_marked_files
                                            && buflist_used < buflist->ga_len)
--- 2307,2313 ----
                        else
                        {
                            // No timestamp, must be written by an older Vim.
!                           // Assume all remaining buffers are older than
                            // ours.
                            while (count < num_marked_files
                                            && buflist_used < buflist->ga_len)
***************
*** 3201,3207 ****
            {
                if (st_old.st_uid != tmp_st.st_uid)
                    // Changing the owner might fail, in which case the
!                   // file will now owned by the current user, oh well.
                    vim_ignored = fchown(fileno(fp_out), st_old.st_uid, -1);
                if (st_old.st_gid != tmp_st.st_gid
                        && fchown(fileno(fp_out), -1, st_old.st_gid) == -1)
--- 3201,3207 ----
            {
                if (st_old.st_uid != tmp_st.st_uid)
                    // Changing the owner might fail, in which case the
!                   // file will now be owned by the current user, oh well.
                    vim_ignored = fchown(fileno(fp_out), st_old.st_uid, -1);
                if (st_old.st_gid != tmp_st.st_gid
                        && fchown(fileno(fp_out), -1, st_old.st_gid) == -1)
*** ../vim-8.1.2242/src/version.c       2019-11-02 22:45:28.731242504 +0100
--- src/version.c       2019-11-02 22:53:13.381506727 +0100
***************
*** 743,744 ****
--- 743,746 ----
  {   /* Add new patch number below this line */
+ /**/
+     2243,
  /**/

-- 
"Making it up?  Why should I want to make anything up?  Life's bad enough
as it is without wanting to invent any more of it."
                -- Marvin, the Paranoid Android in Douglas Adams'
                   "The Hitchhiker's Guide to the Galaxy"

 /// 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/201911022155.xA2LtJQo021645%40masaka.moolenaar.net.

Raspunde prin e-mail lui