comparison src/ex_docmd.c @ 2887:15705b520c29 v7.3.217

updated for version 7.3.217 Problem: Inside an "if" a ":wincmd" causes problems. Solution: When skipping commands let ":wincmd" skip over its argument.
author Bram Moolenaar <bram@vim.org>
date Mon, 13 Jun 2011 01:19:56 +0200
parents 41b17dd07029
children aa998de9f959
comparison
equal deleted inserted replaced
2886:0c9ba5594d9a 2887:15705b520c29
2593 case CMD_tilde: 2593 case CMD_tilde:
2594 case CMD_topleft: 2594 case CMD_topleft:
2595 case CMD_unlet: 2595 case CMD_unlet:
2596 case CMD_verbose: 2596 case CMD_verbose:
2597 case CMD_vertical: 2597 case CMD_vertical:
2598 case CMD_wincmd:
2598 break; 2599 break;
2599 2600
2600 default: goto doend; 2601 default: goto doend;
2601 } 2602 }
2602 } 2603 }
8235 8236
8236 eap->nextcmd = check_nextcmd(p); 8237 eap->nextcmd = check_nextcmd(p);
8237 p = skipwhite(p); 8238 p = skipwhite(p);
8238 if (*p != NUL && *p != '"' && eap->nextcmd == NULL) 8239 if (*p != NUL && *p != '"' && eap->nextcmd == NULL)
8239 EMSG(_(e_invarg)); 8240 EMSG(_(e_invarg));
8240 else 8241 else if (!eap->skip)
8241 { 8242 {
8242 /* Pass flags on for ":vertical wincmd ]". */ 8243 /* Pass flags on for ":vertical wincmd ]". */
8243 postponed_split_flags = cmdmod.split; 8244 postponed_split_flags = cmdmod.split;
8244 postponed_split_tab = cmdmod.tab; 8245 postponed_split_tab = cmdmod.tab;
8245 do_window(*eap->arg, eap->addr_count > 0 ? eap->line2 : 0L, xchar); 8246 do_window(*eap->arg, eap->addr_count > 0 ? eap->line2 : 0L, xchar);