diff --git a/7.4.531 b/7.4.531 new file mode 100644 index 0000000..6acf9a0 --- /dev/null +++ b/7.4.531 @@ -0,0 +1,165 @@ +To: vim_dev@googlegroups.com +Subject: Patch 7.4.531 +Fcc: outbox +From: Bram Moolenaar +Mime-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit +------------ + +Patch 7.4.531 +Problem: Comments about parsing an Ex command are wrong. +Solution: Correct the steop numbers. +Files: src/ex_docmd.c + + +*** ../vim-7.4.530/src/ex_docmd.c 2014-11-27 16:22:42.742413039 +0100 +--- src/ex_docmd.c 2014-11-27 16:37:22.164760647 +0100 +*************** +*** 1721,1728 **** + * + * 1. skip comment lines and leading space + * 2. handle command modifiers +! * 3. parse command + * 4. parse range + * 6. parse arguments + * 7. switch on command name + * +--- 1721,1729 ---- + * + * 1. skip comment lines and leading space + * 2. handle command modifiers +! * 3. find the command + * 4. parse range ++ * 5. Parse the command. + * 6. parse arguments + * 7. switch on command name + * +*************** +*** 2335,2341 **** + ea.forceit = FALSE; + + /* +! * 5. Parse arguments. + */ + if (!IS_USER_CMDIDX(ea.cmdidx)) + ea.argt = (long)cmdnames[(int)ea.cmdidx].cmd_argt; +--- 2336,2342 ---- + ea.forceit = FALSE; + + /* +! * 6. Parse arguments. + */ + if (!IS_USER_CMDIDX(ea.cmdidx)) + ea.argt = (long)cmdnames[(int)ea.cmdidx].cmd_argt; +*************** +*** 2782,2788 **** + #endif + + /* +! * 6. Switch on command name. + * + * The "ea" structure holds the arguments that can be used. + */ +--- 2783,2789 ---- + #endif + + /* +! * 7. Switch on command name. + * + * The "ea" structure holds the arguments that can be used. + */ +*************** +*** 3319,3325 **** + ea.argt = 0; + + /* +! * 2. skip comment lines and leading space, colons or bars + */ + for (cmd = buff; vim_strchr((char_u *)" \t:|", *cmd) != NULL; cmd++) + ; +--- 3320,3326 ---- + ea.argt = 0; + + /* +! * 1. skip comment lines and leading space, colons or bars + */ + for (cmd = buff; vim_strchr((char_u *)" \t:|", *cmd) != NULL; cmd++) + ; +*************** +*** 3334,3346 **** + } + + /* +! * 3. parse a range specifier of the form: addr [,addr] [;addr] .. + */ + cmd = skip_range(cmd, &xp->xp_context); +- +- /* +- * 4. parse command +- */ + xp->xp_pattern = cmd; + if (*cmd == NUL) + return NULL; +--- 3335,3343 ---- + } + + /* +! * 3. Skip over the range to find the command. + */ + cmd = skip_range(cmd, &xp->xp_context); + xp->xp_pattern = cmd; + if (*cmd == NUL) + return NULL; +*************** +*** 3446,3452 **** + } + + /* +! * 5. parse arguments + */ + if (!IS_USER_CMDIDX(ea.cmdidx)) + ea.argt = (long)cmdnames[(int)ea.cmdidx].cmd_argt; +--- 3443,3449 ---- + } + + /* +! * 6. parse arguments + */ + if (!IS_USER_CMDIDX(ea.cmdidx)) + ea.argt = (long)cmdnames[(int)ea.cmdidx].cmd_argt; +*************** +*** 3682,3688 **** + } + + /* +! * 6. switch on command name + */ + switch (ea.cmdidx) + { +--- 3679,3685 ---- + } + + /* +! * 6. Switch on command name. + */ + switch (ea.cmdidx) + { +*** ../vim-7.4.530/src/version.c 2014-11-27 16:22:42.746412995 +0100 +--- src/version.c 2014-11-27 16:30:25.149339297 +0100 +*************** +*** 743,744 **** +--- 743,746 ---- + { /* Add new patch number below this line */ ++ /**/ ++ 531, + /**/ + +-- +Wi n0t trei a h0liday in Sweden thi yer? + "Monty Python and the Holy Grail" PYTHON (MONTY) PICTURES LTD + + /// Bram Moolenaar -- Bram@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 ///