components/vim/vim72-patches/7.2.270
changeset 379 c6a17bba1da3
parent 378 f0b61ed1d10d
child 380 e92b3b4a1c66
equal deleted inserted replaced
378:f0b61ed1d10d 379:c6a17bba1da3
     1 To: [email protected]
       
     2 Subject: Patch 7.2.270
       
     3 Fcc: outbox
       
     4 From: Bram Moolenaar <[email protected]>
       
     5 Mime-Version: 1.0
       
     6 Content-Type: text/plain; charset=UTF-8
       
     7 Content-Transfer-Encoding: 8bit
       
     8 ------------
       
     9 
       
    10 Patch 7.2.270
       
    11 Problem:    Using ":@c" when the c register contains a CR causes the rest to
       
    12 	    be executed later. (Dexter Douglas)
       
    13 Solution:   Don't check for typeahead to start with ':', keep executing
       
    14 	    commands until all added typeahead has been used.
       
    15 Files:	    src/ex_docmd.c
       
    16 
       
    17 
       
    18 *** ../vim-7.2.269/src/ex_docmd.c	2009-09-30 13:23:57.000000000 +0200
       
    19 --- src/ex_docmd.c	2009-10-28 12:06:54.000000000 +0100
       
    20 ***************
       
    21 *** 8358,8363 ****
       
    22 --- 8358,8364 ----
       
    23       exarg_T	*eap;
       
    24   {
       
    25       int		c;
       
    26 +     int		prev_len = typebuf.tb_len;
       
    27   
       
    28       curwin->w_cursor.lnum = eap->line2;
       
    29   
       
    30 ***************
       
    31 *** 8383,8393 ****
       
    32   
       
    33   	/*
       
    34   	 * Execute from the typeahead buffer.
       
    35 ! 	 * Originally this didn't check for the typeahead buffer to be empty,
       
    36 ! 	 * thus could read more Ex commands from stdin.  It's not clear why,
       
    37 ! 	 * it is certainly unexpected.
       
    38   	 */
       
    39 ! 	while ((!stuff_empty() || typebuf.tb_len > 0) && vpeekc() == ':')
       
    40   	    (void)do_cmdline(NULL, getexline, NULL, DOCMD_NOWAIT|DOCMD_VERBOSE);
       
    41   
       
    42   	exec_from_reg = save_efr;
       
    43 --- 8384,8393 ----
       
    44   
       
    45   	/*
       
    46   	 * Execute from the typeahead buffer.
       
    47 ! 	 * Continue until the stuff buffer is empty and all added characters
       
    48 ! 	 * have been consumed.
       
    49   	 */
       
    50 ! 	while (!stuff_empty() || typebuf.tb_len > prev_len)
       
    51   	    (void)do_cmdline(NULL, getexline, NULL, DOCMD_NOWAIT|DOCMD_VERBOSE);
       
    52   
       
    53   	exec_from_reg = save_efr;
       
    54 *** ../vim-7.2.269/src/version.c	2009-11-03 12:10:39.000000000 +0100
       
    55 --- src/version.c	2009-11-03 12:32:47.000000000 +0100
       
    56 ***************
       
    57 *** 678,679 ****
       
    58 --- 678,681 ----
       
    59   {   /* Add new patch number below this line */
       
    60 + /**/
       
    61 +     270,
       
    62   /**/
       
    63 
       
    64 -- 
       
    65 To the optimist, the glass is half full.
       
    66 To the pessimist, the glass is half empty.
       
    67 To the engineer, the glass is twice as big as it needs to be.
       
    68 
       
    69  /// Bram Moolenaar -- [email protected] -- http://www.Moolenaar.net   \\\
       
    70 ///        sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\
       
    71 \\\        download, build and distribute -- http://www.A-A-P.org        ///
       
    72  \\\            help me help AIDS victims -- http://ICCF-Holland.org    ///