To: vim-dev@vim.org Subject: Patch 7.1.222 Fcc: outbox From: Bram Moolenaar Mime-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 8bit ------------ Patch 7.1.222 (after 7.1.217) Problem: Wildcards in argument of ":helptags" are not expanded. (Marcel Svitalsky) Solution: Expand wildcards in the directory name. Files: src/ex_cmds.c *** ../vim-7.1.221/src/ex_cmds.c Fri Jan 11 21:00:49 2008 --- src/ex_cmds.c Sat Jan 12 21:40:51 2008 *************** *** 6106,6111 **** --- 6106,6113 ---- #ifdef FEAT_MULTI_LANG char_u lang[2]; #endif + expand_T xpc; + char_u *dirname; char_u ext[5]; char_u fname[8]; int filecount; *************** *** 6119,6125 **** eap->arg = skipwhite(eap->arg + 3); } ! if (!mch_isdir(eap->arg)) { EMSG2(_("E150: Not a directory: %s"), eap->arg); return; --- 6121,6131 ---- eap->arg = skipwhite(eap->arg + 3); } ! ExpandInit(&xpc); ! xpc.xp_context = EXPAND_DIRECTORIES; ! dirname = ExpandOne(&xpc, eap->arg, NULL, ! WILD_LIST_NOTFOUND|WILD_SILENT, WILD_EXPAND_FREE); ! if (dirname == NULL || !mch_isdir(dirname)) { EMSG2(_("E150: Not a directory: %s"), eap->arg); return; *************** *** 6127,6133 **** #ifdef FEAT_MULTI_LANG /* Get a list of all files in the directory. */ ! STRCPY(NameBuff, eap->arg); add_pathsep(NameBuff); STRCAT(NameBuff, "*"); if (gen_expand_wildcards(1, &NameBuff, &filecount, &files, --- 6133,6139 ---- #ifdef FEAT_MULTI_LANG /* Get a list of all files in the directory. */ ! STRCPY(NameBuff, dirname); add_pathsep(NameBuff); STRCAT(NameBuff, "*"); if (gen_expand_wildcards(1, &NameBuff, &filecount, &files, *************** *** 6135,6140 **** --- 6141,6147 ---- || filecount == 0) { EMSG2("E151: No match: %s", NameBuff); + vim_free(dirname); return; } *************** *** 6200,6206 **** ext[1] = fname[5]; ext[2] = fname[6]; } ! helptags_one(eap->arg, ext, fname, add_help_tags); } ga_clear(&ga); --- 6207,6213 ---- ext[1] = fname[5]; ext[2] = fname[6]; } ! helptags_one(dirname, ext, fname, add_help_tags); } ga_clear(&ga); *************** *** 6208,6215 **** #else /* No language support, just use "*.txt" and "tags". */ ! helptags_one(eap->arg, (char_u *)".txt", (char_u *)"tags", add_help_tags); #endif } static void --- 6215,6223 ---- #else /* No language support, just use "*.txt" and "tags". */ ! helptags_one(dirname, (char_u *)".txt", (char_u *)"tags", add_help_tags); #endif + vim_free(dirname); } static void *** ../vim-7.1.221/src/version.c Sat Jan 12 18:13:05 2008 --- src/version.c Sun Jan 13 13:27:04 2008 *************** *** 668,669 **** --- 668,671 ---- { /* Add new patch number below this line */ + /**/ + 222, /**/ -- Arthur pulls Pin out. The MONK blesses the grenade as ... ARTHUR: (quietly) One, two, five ... GALAHAD: Three, sir! ARTHUR: Three. "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/ \\\ \\\ download, build and distribute -- http://www.A-A-P.org /// \\\ help me help AIDS victims -- http://ICCF-Holland.org ///