diff options
Diffstat (limited to 'src/nvim/path.c')
-rw-r--r-- | src/nvim/path.c | 89 |
1 files changed, 45 insertions, 44 deletions
diff --git a/src/nvim/path.c b/src/nvim/path.c index 72980fcd0e..f68cb46f33 100644 --- a/src/nvim/path.c +++ b/src/nvim/path.c @@ -268,15 +268,15 @@ char_u *shorten_dir(char_u *str) * Also returns TRUE if there is no directory name. * "fname" must be writable!. */ -int dir_of_file_exists(char_u *fname) +bool dir_of_file_exists(char_u *fname) { char_u *p; int c; - int retval; + bool retval; p = path_tail_with_sep(fname); if (p == fname) - return TRUE; + return true; c = *p; *p = NUL; retval = os_isdir(fname); @@ -510,7 +510,7 @@ static size_t do_path_expand(garray_T *gap, const char_u *path, int starts_with_dot; int matches; int len; - int starstar = FALSE; + bool starstar = false; static int stardepth = 0; /* depth for "**" expansion */ /* Expanding "**" may take a long time, check for CTRL-C. */ @@ -570,7 +570,7 @@ static size_t do_path_expand(garray_T *gap, const char_u *path, /* Check for "**" between "s" and "e". */ for (p = s; p < e; ++p) if (p[0] == '*' && p[1] == '*') - starstar = TRUE; + starstar = true; /* convert the file pattern to a regexp pattern */ starts_with_dot = (*s == '.'); @@ -606,7 +606,7 @@ static size_t do_path_expand(garray_T *gap, const char_u *path, && *path_end == '/') { STRCPY(s, path_end + 1); ++stardepth; - (void)do_path_expand(gap, buf, (int)(s - buf), flags, TRUE); + (void)do_path_expand(gap, buf, (int)(s - buf), flags, true); --stardepth; } *s = NUL; @@ -688,7 +688,7 @@ static int find_previous_pathsep(char_u *path, char_u **psep) * Returns TRUE if "maybe_unique" is unique wrt other_paths in "gap". * "maybe_unique" is the end portion of "((char_u **)gap->ga_data)[i]". */ -static int is_unique(char_u *maybe_unique, garray_T *gap, int i) +static bool is_unique(char_u *maybe_unique, garray_T *gap, int i) { int candidate_len; int other_path_len; @@ -707,10 +707,10 @@ static int is_unique(char_u *maybe_unique, garray_T *gap, int i) rival = other_paths[j] + other_path_len - candidate_len; if (fnamecmp(maybe_unique, rival) == 0 && (rival == other_paths[j] || vim_ispathsep(*(rival - 1)))) - return FALSE; /* match */ + return false; /* match */ } - return TRUE; /* no match found */ + return true; /* no match found */ } /* @@ -816,7 +816,7 @@ static void uniquefy_paths(garray_T *gap, char_u *pattern) { int len; char_u **fnames = (char_u **)gap->ga_data; - int sort_again = FALSE; + bool sort_again = false; char_u *pat; char_u *file_pattern; char_u *curdir; @@ -878,7 +878,7 @@ static void uniquefy_paths(garray_T *gap, char_u *pattern) if (vim_regexec(®match, pathsep_p + 1, (colnr_T)0) && is_unique(pathsep_p + 1, gap, i) && path_cutoff != NULL && pathsep_p + 1 >= path_cutoff) { - sort_again = TRUE; + sort_again = true; memmove(path, pathsep_p + 1, STRLEN(pathsep_p)); break; } @@ -932,7 +932,7 @@ static void uniquefy_paths(garray_T *gap, char_u *pattern) xfree(fnames[i]); fnames[i] = rel_path; - sort_again = TRUE; + sort_again = true; os_breakcheck(); } @@ -957,19 +957,19 @@ static char_u *gettail_dir(char_u *fname) { char_u *dir_end = fname; char_u *next_dir_end = fname; - int look_for_sep = TRUE; + bool look_for_sep = true; char_u *p; for (p = fname; *p != NUL; ) { if (vim_ispathsep(*p)) { if (look_for_sep) { next_dir_end = p; - look_for_sep = FALSE; + look_for_sep = false; } } else { if (!look_for_sep) dir_end = next_dir_end; - look_for_sep = TRUE; + look_for_sep = true; } mb_ptr_adv(p); } @@ -1016,7 +1016,7 @@ expand_in_path ( * Return TRUE if "p" contains what looks like an environment variable. * Allowing for escaping. */ -static int has_env_var(char_u *p) +static bool has_env_var(char_u *p) { for (; *p; mb_ptr_adv(p)) { if (*p == '\\' && p[1] != NUL) @@ -1024,9 +1024,9 @@ static int has_env_var(char_u *p) else if (vim_strchr((char_u *) "$" , *p) != NULL) - return TRUE; + return true; } - return FALSE; + return false; } #ifdef SPECIAL_WILDCHAR @@ -1034,15 +1034,15 @@ static int has_env_var(char_u *p) * Return TRUE if "p" contains a special wildcard character. * Allowing for escaping. */ -static int has_special_wildchar(char_u *p) +static bool has_special_wildchar(char_u *p) { for (; *p; mb_ptr_adv(p)) { if (*p == '\\' && p[1] != NUL) ++p; else if (vim_strchr((char_u *)SPECIAL_WILDCHAR, *p) != NULL) - return TRUE; + return true; } - return FALSE; + return false; } #endif @@ -1070,9 +1070,9 @@ int gen_expand_wildcards(int num_pat, char_u **pat, int *num_file, int i; garray_T ga; char_u *p; - static int recursive = FALSE; + static bool recursive = false; int add_pat; - int did_expand_in_path = FALSE; + bool did_expand_in_path = false; /* * expand_env() is called to expand things like "~user". If this fails, @@ -1102,7 +1102,7 @@ int gen_expand_wildcards(int num_pat, char_u **pat, int *num_file, } #endif - recursive = TRUE; + recursive = true; /* * The matching file names are stored in a growarray. Init it empty. @@ -1120,7 +1120,7 @@ int gen_expand_wildcards(int num_pat, char_u **pat, int *num_file, * First expand environment variables, "~/" and "~user/". */ if (has_env_var(p) || *p == '~') { - p = expand_env_save_opt(p, TRUE); + p = expand_env_save_opt(p, true); if (p == NULL) p = pat[i]; #ifdef UNIX @@ -1134,7 +1134,7 @@ int gen_expand_wildcards(int num_pat, char_u **pat, int *num_file, ga_clear_strings(&ga); i = mch_expand_wildcards(num_pat, pat, num_file, file, flags | EW_KEEPDOLLAR); - recursive = FALSE; + recursive = false; return i; } #endif @@ -1156,12 +1156,13 @@ int gen_expand_wildcards(int num_pat, char_u **pat, int *num_file, ) { /* :find completion where 'path' is used. * Recursiveness is OK here. */ - recursive = FALSE; + recursive = false; add_pat = expand_in_path(&ga, p, flags); - recursive = TRUE; - did_expand_in_path = TRUE; - } else + recursive = true; + did_expand_in_path = true; + } else { add_pat = path_expand(&ga, p, flags); + } } } @@ -1186,7 +1187,7 @@ int gen_expand_wildcards(int num_pat, char_u **pat, int *num_file, *num_file = ga.ga_len; *file = (ga.ga_data != NULL) ? (char_u **)ga.ga_data : (char_u **)""; - recursive = FALSE; + recursive = false; return (ga.ga_data != NULL) ? OK : FAIL; } @@ -1312,8 +1313,8 @@ void simplify_filename(char_u *filename) { int components = 0; char_u *p, *tail, *start; - int stripping_disabled = FALSE; - int relative = TRUE; + bool stripping_disabled = false; + bool relative = true; p = filename; #ifdef BACKSLASH_IN_FILENAME @@ -1322,7 +1323,7 @@ void simplify_filename(char_u *filename) #endif if (vim_ispathsep(*p)) { - relative = FALSE; + relative = false; do ++p; while (vim_ispathsep(*p)); @@ -1358,7 +1359,7 @@ void simplify_filename(char_u *filename) mb_ptr_adv(tail); if (components > 0) { /* strip one preceding component */ - int do_strip = FALSE; + bool do_strip = false; char_u saved_char; /* Don't strip for an erroneous file name. */ @@ -1370,7 +1371,7 @@ void simplify_filename(char_u *filename) p[-1] = NUL; FileInfo file_info; if (!os_fileinfo_link((char *)filename, &file_info)) { - do_strip = TRUE; + do_strip = true; } p[-1] = saved_char; @@ -1393,10 +1394,10 @@ void simplify_filename(char_u *filename) saved_char = *tail; *tail = NUL; if (os_fileinfo((char *)filename, &file_info)) { - do_strip = TRUE; + do_strip = true; + } else { + stripping_disabled = true; } - else - stripping_disabled = TRUE; *tail = saved_char; if (do_strip) { /* The check for the unstripped file name @@ -1417,7 +1418,7 @@ void simplify_filename(char_u *filename) } if (!os_fileinfo_id_equal(&file_info, &new_file_info)) { - do_strip = FALSE; + do_strip = false; /* We don't disable stripping of later * components since the unstripped path name is * still valid. */ @@ -1612,7 +1613,7 @@ int vim_FullName(const char *fname, char *buf, int len, bool force) char *fix_fname(char *fname) { #ifdef UNIX - return FullName_save(fname, TRUE); + return FullName_save(fname, true); #else if (!vim_isAbsName((char_u *)fname) || strstr(fname, "..") != NULL @@ -1621,7 +1622,7 @@ char *fix_fname(char *fname) || strstr(fname, "\\\\") != NULL # endif ) - return FullName_save(fname, FALSE); + return FullName_save(fname, false); fname = xstrdup(fname); @@ -1703,7 +1704,7 @@ int after_pathsep(const char *b, const char *p) * Return TRUE if file names "f1" and "f2" are in the same directory. * "f1" may be a short name, "f2" must be a full path. */ -int same_directory(char_u *f1, char_u *f2) +bool same_directory(char_u *f1, char_u *f2) { char_u ffname[MAXPATHL]; char_u *t1; @@ -1711,7 +1712,7 @@ int same_directory(char_u *f1, char_u *f2) /* safety check */ if (f1 == NULL || f2 == NULL) - return FALSE; + return false; (void)vim_FullName((char *)f1, (char *)ffname, MAXPATHL, FALSE); t1 = path_tail_with_sep(ffname); |