Browse Source

Merge branch 'tb/void-check-attr'

Code clean-up.

* tb/void-check-attr:
  Make git_check_attr() a void function
maint
Junio C Hamano 6 years ago
parent
commit
10de0f802d
  1. 3
      archive.c
  2. 8
      attr.c
  3. 4
      attr.h
  4. 3
      builtin/check-attr.c
  5. 3
      builtin/pack-objects.c
  6. 42
      convert.c
  7. 16
      ll-merge.c
  8. 3
      userdiff.c
  9. 44
      ws.c

3
archive.c

@ -110,7 +110,8 @@ static const struct attr_check *get_archive_attrs(struct index_state *istate, @@ -110,7 +110,8 @@ static const struct attr_check *get_archive_attrs(struct index_state *istate,
static struct attr_check *check;
if (!check)
check = attr_check_initl("export-ignore", "export-subst", NULL);
return git_check_attr(istate, path, check) ? NULL : check;
git_check_attr(istate, path, check);
return check;
}

static int check_attr_export_ignore(const struct attr_check *check)

8
attr.c

@ -1143,9 +1143,9 @@ static void collect_some_attrs(const struct index_state *istate, @@ -1143,9 +1143,9 @@ static void collect_some_attrs(const struct index_state *istate,
fill(path, pathlen, basename_offset, check->stack, check->all_attrs, rem);
}

int git_check_attr(const struct index_state *istate,
const char *path,
struct attr_check *check)
void git_check_attr(const struct index_state *istate,
const char *path,
struct attr_check *check)
{
int i;

@ -1158,8 +1158,6 @@ int git_check_attr(const struct index_state *istate, @@ -1158,8 +1158,6 @@ int git_check_attr(const struct index_state *istate,
value = ATTR__UNSET;
check->items[i].value = value;
}

return 0;
}

void git_all_attrs(const struct index_state *istate,

4
attr.h

@ -63,8 +63,8 @@ void attr_check_free(struct attr_check *check); @@ -63,8 +63,8 @@ void attr_check_free(struct attr_check *check);
*/
const char *git_attr_name(const struct git_attr *);

int git_check_attr(const struct index_state *istate,
const char *path, struct attr_check *check);
void git_check_attr(const struct index_state *istate,
const char *path, struct attr_check *check);

/*
* Retrieve all attributes that apply to the specified path.

3
builtin/check-attr.c

@ -65,8 +65,7 @@ static void check_attr(const char *prefix, @@ -65,8 +65,7 @@ static void check_attr(const char *prefix,
if (collect_all) {
git_all_attrs(&the_index, full_path, check);
} else {
if (git_check_attr(&the_index, full_path, check))
die("git_check_attr died");
git_check_attr(&the_index, full_path, check);
}
output_attr(check, file);


3
builtin/pack-objects.c

@ -970,8 +970,7 @@ static int no_try_delta(const char *path) @@ -970,8 +970,7 @@ static int no_try_delta(const char *path)

if (!check)
check = attr_check_initl("delta", NULL);
if (git_check_attr(&the_index, path, check))
return 0;
git_check_attr(&the_index, path, check);
if (ATTR_FALSE(check->items[0].value))
return 1;
return 0;

42
convert.c

@ -1297,6 +1297,7 @@ static void convert_attrs(const struct index_state *istate, @@ -1297,6 +1297,7 @@ static void convert_attrs(const struct index_state *istate,
struct conv_attrs *ca, const char *path)
{
static struct attr_check *check;
struct attr_check_item *ccheck = NULL;

if (!check) {
check = attr_check_initl("crlf", "ident", "filter",
@ -1306,30 +1307,25 @@ static void convert_attrs(const struct index_state *istate, @@ -1306,30 +1307,25 @@ static void convert_attrs(const struct index_state *istate,
git_config(read_convert_config, NULL);
}

if (!git_check_attr(istate, path, check)) {
struct attr_check_item *ccheck = check->items;
ca->crlf_action = git_path_check_crlf(ccheck + 4);
if (ca->crlf_action == CRLF_UNDEFINED)
ca->crlf_action = git_path_check_crlf(ccheck + 0);
ca->ident = git_path_check_ident(ccheck + 1);
ca->drv = git_path_check_convert(ccheck + 2);
if (ca->crlf_action != CRLF_BINARY) {
enum eol eol_attr = git_path_check_eol(ccheck + 3);
if (ca->crlf_action == CRLF_AUTO && eol_attr == EOL_LF)
ca->crlf_action = CRLF_AUTO_INPUT;
else if (ca->crlf_action == CRLF_AUTO && eol_attr == EOL_CRLF)
ca->crlf_action = CRLF_AUTO_CRLF;
else if (eol_attr == EOL_LF)
ca->crlf_action = CRLF_TEXT_INPUT;
else if (eol_attr == EOL_CRLF)
ca->crlf_action = CRLF_TEXT_CRLF;
}
ca->working_tree_encoding = git_path_check_encoding(ccheck + 5);
} else {
ca->drv = NULL;
ca->crlf_action = CRLF_UNDEFINED;
ca->ident = 0;
git_check_attr(istate, path, check);
ccheck = check->items;
ca->crlf_action = git_path_check_crlf(ccheck + 4);
if (ca->crlf_action == CRLF_UNDEFINED)
ca->crlf_action = git_path_check_crlf(ccheck + 0);
ca->ident = git_path_check_ident(ccheck + 1);
ca->drv = git_path_check_convert(ccheck + 2);
if (ca->crlf_action != CRLF_BINARY) {
enum eol eol_attr = git_path_check_eol(ccheck + 3);
if (ca->crlf_action == CRLF_AUTO && eol_attr == EOL_LF)
ca->crlf_action = CRLF_AUTO_INPUT;
else if (ca->crlf_action == CRLF_AUTO && eol_attr == EOL_CRLF)
ca->crlf_action = CRLF_AUTO_CRLF;
else if (eol_attr == EOL_LF)
ca->crlf_action = CRLF_TEXT_INPUT;
else if (eol_attr == EOL_CRLF)
ca->crlf_action = CRLF_TEXT_CRLF;
}
ca->working_tree_encoding = git_path_check_encoding(ccheck + 5);

/* Save attr and make a decision for action */
ca->attr_action = ca->crlf_action;

16
ll-merge.c

@ -371,13 +371,12 @@ int ll_merge(mmbuffer_t *result_buf, @@ -371,13 +371,12 @@ int ll_merge(mmbuffer_t *result_buf,
if (!check)
check = attr_check_initl("merge", "conflict-marker-size", NULL);

if (!git_check_attr(&the_index, path, check)) {
ll_driver_name = check->items[0].value;
if (check->items[1].value) {
marker_size = atoi(check->items[1].value);
if (marker_size <= 0)
marker_size = DEFAULT_CONFLICT_MARKER_SIZE;
}
git_check_attr(&the_index, path, check);
ll_driver_name = check->items[0].value;
if (check->items[1].value) {
marker_size = atoi(check->items[1].value);
if (marker_size <= 0)
marker_size = DEFAULT_CONFLICT_MARKER_SIZE;
}
driver = find_ll_merge_driver(ll_driver_name);

@ -398,7 +397,8 @@ int ll_merge_marker_size(const char *path) @@ -398,7 +397,8 @@ int ll_merge_marker_size(const char *path)

if (!check)
check = attr_check_initl("conflict-marker-size", NULL);
if (!git_check_attr(&the_index, path, check) && check->items[0].value) {
git_check_attr(&the_index, path, check);
if (check->items[0].value) {
marker_size = atoi(check->items[0].value);
if (marker_size <= 0)
marker_size = DEFAULT_CONFLICT_MARKER_SIZE;

3
userdiff.c

@ -278,8 +278,7 @@ struct userdiff_driver *userdiff_find_by_path(const char *path) @@ -278,8 +278,7 @@ struct userdiff_driver *userdiff_find_by_path(const char *path)
check = attr_check_initl("diff", NULL);
if (!path)
return NULL;
if (git_check_attr(&the_index, path, check))
return NULL;
git_check_attr(&the_index, path, check);

if (ATTR_TRUE(check->items[0].value))
return &driver_true;

44
ws.c

@ -74,35 +74,31 @@ unsigned parse_whitespace_rule(const char *string) @@ -74,35 +74,31 @@ unsigned parse_whitespace_rule(const char *string)
unsigned whitespace_rule(const char *pathname)
{
static struct attr_check *attr_whitespace_rule;
const char *value;

if (!attr_whitespace_rule)
attr_whitespace_rule = attr_check_initl("whitespace", NULL);

if (!git_check_attr(&the_index, pathname, attr_whitespace_rule)) {
const char *value;

value = attr_whitespace_rule->items[0].value;
if (ATTR_TRUE(value)) {
/* true (whitespace) */
unsigned all_rule = ws_tab_width(whitespace_rule_cfg);
int i;
for (i = 0; i < ARRAY_SIZE(whitespace_rule_names); i++)
if (!whitespace_rule_names[i].loosens_error &&
!whitespace_rule_names[i].exclude_default)
all_rule |= whitespace_rule_names[i].rule_bits;
return all_rule;
} else if (ATTR_FALSE(value)) {
/* false (-whitespace) */
return ws_tab_width(whitespace_rule_cfg);
} else if (ATTR_UNSET(value)) {
/* reset to default (!whitespace) */
return whitespace_rule_cfg;
} else {
/* string */
return parse_whitespace_rule(value);
}
} else {
git_check_attr(&the_index, pathname, attr_whitespace_rule);
value = attr_whitespace_rule->items[0].value;
if (ATTR_TRUE(value)) {
/* true (whitespace) */
unsigned all_rule = ws_tab_width(whitespace_rule_cfg);
int i;
for (i = 0; i < ARRAY_SIZE(whitespace_rule_names); i++)
if (!whitespace_rule_names[i].loosens_error &&
!whitespace_rule_names[i].exclude_default)
all_rule |= whitespace_rule_names[i].rule_bits;
return all_rule;
} else if (ATTR_FALSE(value)) {
/* false (-whitespace) */
return ws_tab_width(whitespace_rule_cfg);
} else if (ATTR_UNSET(value)) {
/* reset to default (!whitespace) */
return whitespace_rule_cfg;
} else {
/* string */
return parse_whitespace_rule(value);
}
}


Loading…
Cancel
Save