Skip to content

Commit f870899

Browse files
saurvsgitster
authored andcommitted
dir: store EXC_FLAG_* values in unsigned integers
The values defined by the macro EXC_FLAG_* (1, 4, 8, 16) are stored in fields of the structs "pattern" and "exclude", some functions arguments and a local variable. None of these uses its most significant bit in any special way and there is no good reason to use a signed integer for them. And while we're at it, document "flags" of "exclude" to explicitly state the values it's supposed to take on. Signed-off-by: Saurav Sachidanand <[email protected]> Signed-off-by: Junio C Hamano <[email protected]>
1 parent a2558fb commit f870899

File tree

3 files changed

+9
-9
lines changed

3 files changed

+9
-9
lines changed

attr.c

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -124,7 +124,7 @@ struct pattern {
124124
const char *pattern;
125125
int patternlen;
126126
int nowildcardlen;
127-
int flags; /* EXC_FLAG_* */
127+
unsigned flags; /* EXC_FLAG_* */
128128
};
129129

130130
/*

dir.c

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -441,7 +441,7 @@ int no_wildcard(const char *string)
441441

442442
void parse_exclude_pattern(const char **pattern,
443443
int *patternlen,
444-
int *flags,
444+
unsigned *flags,
445445
int *nowildcardlen)
446446
{
447447
const char *p = *pattern;
@@ -482,7 +482,7 @@ void add_exclude(const char *string, const char *base,
482482
{
483483
struct exclude *x;
484484
int patternlen;
485-
int flags;
485+
unsigned flags;
486486
int nowildcardlen;
487487

488488
parse_exclude_pattern(&string, &patternlen, &flags, &nowildcardlen);
@@ -663,7 +663,7 @@ void add_excludes_from_file(struct dir_struct *dir, const char *fname)
663663

664664
int match_basename(const char *basename, int basenamelen,
665665
const char *pattern, int prefix, int patternlen,
666-
int flags)
666+
unsigned flags)
667667
{
668668
if (prefix == patternlen) {
669669
if (patternlen == basenamelen &&
@@ -688,7 +688,7 @@ int match_basename(const char *basename, int basenamelen,
688688
int match_pathname(const char *pathname, int pathlen,
689689
const char *base, int baselen,
690690
const char *pattern, int prefix, int patternlen,
691-
int flags)
691+
unsigned flags)
692692
{
693693
const char *name;
694694
int namelen;

dir.h

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,7 @@ struct exclude {
2727
int nowildcardlen;
2828
const char *base;
2929
int baselen;
30-
int flags;
30+
unsigned flags; /* EXC_FLAG_* */
3131

3232
/*
3333
* Counting starts from 1 for line numbers in ignore files,
@@ -152,10 +152,10 @@ struct dir_entry *dir_add_ignored(struct dir_struct *dir, const char *pathname,
152152
* attr.c:path_matches()
153153
*/
154154
extern int match_basename(const char *, int,
155-
const char *, int, int, int);
155+
const char *, int, int, unsigned);
156156
extern int match_pathname(const char *, int,
157157
const char *, int,
158-
const char *, int, int, int);
158+
const char *, int, int, unsigned);
159159

160160
extern struct exclude *last_exclude_matching(struct dir_struct *dir,
161161
const char *name, int *dtype);
@@ -167,7 +167,7 @@ extern struct exclude_list *add_exclude_list(struct dir_struct *dir,
167167
extern int add_excludes_from_file_to_list(const char *fname, const char *base, int baselen,
168168
struct exclude_list *el, int check_index);
169169
extern void add_excludes_from_file(struct dir_struct *, const char *fname);
170-
extern void parse_exclude_pattern(const char **string, int *patternlen, int *flags, int *nowildcardlen);
170+
extern void parse_exclude_pattern(const char **string, int *patternlen, unsigned *flags, int *nowildcardlen);
171171
extern void add_exclude(const char *string, const char *base,
172172
int baselen, struct exclude_list *el, int srcpos);
173173
extern void clear_exclude_list(struct exclude_list *el);

0 commit comments

Comments
 (0)