f_expand(typval_T *argvars, typval_T *rettv)
{
char_u *s;
- int len;
+ size_t len;
int options = WILD_SILENT|WILD_USE_NL|WILD_LIST_NOTFOUND;
expand_T xpc;
int error = FALSE;
{
int has_wildcards; // need to expand wildcards
char_u *repl;
- int srclen;
+ size_t srclen;
char_u *p;
int n;
int escaped;
}
}
- p = repl_cmdline(eap, p, (size_t)srclen, repl, cmdlinep);
+ p = repl_cmdline(eap, p, srclen, repl, cmdlinep);
vim_free(repl);
if (p == NULL)
return FAIL;
* the variable. Otherwise return -1 and "*usedlen" is unchanged.
*/
int
-find_cmdline_var(char_u *src, int *usedlen)
+find_cmdline_var(char_u *src, size_t *usedlen)
{
// must be sorted by the 'value' field because it is used by bsearch()!
static keyvalue_T spec_str_tab[] = {
eval_vars(
char_u *src, // pointer into commandline
char_u *srcstart, // beginning of valid memory for src
- int *usedlen, // characters after src that are used
+ size_t *usedlen, // characters after src that are used
linenr_T *lnump, // line number for :e command, or NULL
char **errormsg, // pointer to error message
int *escaped, // return value has escaped white space (can
*/
else
{
- int off = 0;
+ size_t off = 0;
switch (spec_idx)
{
size_t len;
char_u *repl;
size_t repllen;
- int srclen;
+ size_t srclen;
char_u *p;
resultlen = STRLEN(arg);
modify_fname(
char_u *src, // string with modifiers
int tilde_file, // "~" is a file name, not $HOME
- int *usedlen, // characters after src that are used
+ size_t *usedlen, // characters after src that are used
char_u **fnamep, // file name so far
char_u **bufp, // buffer for allocated file name or NULL
int *fnamelen) // length of fnamep
str = vim_strnsave(*fnamep, *fnamelen);
if (sub != NULL && str != NULL)
{
- *usedlen = (int)(p + 1 - src);
+ *usedlen = p + 1 - src;
s = do_string_sub(str, pat, sub, NULL, flags);
if (s != NULL)
{
{
char_u *fname;
char_u *mods;
- int usedlen = 0;
+ size_t usedlen = 0;
int len = 0;
char_u *fbuf = NULL;
char_u buf[NUMBUFLEN];
if (homedir_env != NULL && *homedir_env == '~')
{
- int usedlen = 0;
+ size_t usedlen = 0;
int flen;
char_u *fbuf = NULL;
char_u *eval_pat = NULL;
char_u *exp_pat = *pat;
char *ignored_msg;
- int usedlen;
+ size_t usedlen;
int is_cur_alt_file = *exp_pat == '%' || *exp_pat == '#';
int star_follows = FALSE;
char *ppath = NULL;
int i;
int len;
- int usedlen = 0;
+ size_t usedlen = 0;
char_u *fbuf = NULL;
// get the filename (arg1), expand it, and try to stat it
void ex_normal(exarg_T *eap);
void exec_normal_cmd(char_u *cmd, int remap, int silent);
void exec_normal(int was_typed, int use_vpeekc, int may_use_terminal_loop);
-int find_cmdline_var(char_u *src, int *usedlen);
-char_u *eval_vars(char_u *src, char_u *srcstart, int *usedlen, linenr_T *lnump, char **errormsg, int *escaped, int empty_is_error);
+int find_cmdline_var(char_u *src, size_t *usedlen);
+char_u *eval_vars(char_u *src, char_u *srcstart, size_t *usedlen, linenr_T *lnump, char **errormsg, int *escaped, int empty_is_error);
char_u *expand_sfile(char_u *arg);
void dialog_msg(char_u *buff, char *format, char_u *fname);
void set_no_hlsearch(int flag);
/* filepath.c */
-int modify_fname(char_u *src, int tilde_file, int *usedlen, char_u **fnamep, char_u **bufp, int *fnamelen);
+int modify_fname(char_u *src, int tilde_file, size_t *usedlen, char_u **fnamep, char_u **bufp, int *fnamelen);
void shorten_dir(char_u *str);
int file_is_readable(char_u *fname);
void f_chdir(typval_T *argvars, typval_T *rettv);
char_u *p;
char_u *d;
char_u *escaped_string;
- int l;
+ size_t l;
int csh_like;
int fish_like;
char_u *shname;
*d++ = *p++;
continue;
}
- if (do_special && find_cmdline_var(p, &l) >= 0)
+ if (do_special && find_cmdline_var(p, &l) >= 0 && l > 0)
{
*d++ = '\\'; // insert backslash
- while (--l >= 0) // copy the var
+ do // copy the var
*d++ = *p++;
+ while (--l > 0);
continue;
}
if (*p == '\\' && fish_like)
static int included_patches[] =
{ /* Add new patch number below this line */
+/**/
+ 449,
/**/
448,
/**/