struct nonmatching_ref_data: store a refname instead of a ref_entry
Now that we don't need a ref_entry to pass to report_refname_conflict(), it is sufficient to store the refname of the conflicting reference. Signed-off-by: Michael Haggerty <mhagger@alum.mit.edu>
This commit is contained in:

committed by
Junio C Hamano

parent
385e8af5a2
commit
521331cc9f
7
refs.c
7
refs.c
@ -843,7 +843,7 @@ static void prime_ref_dir(struct ref_dir *dir)
|
|||||||
|
|
||||||
struct nonmatching_ref_data {
|
struct nonmatching_ref_data {
|
||||||
const struct string_list *skip;
|
const struct string_list *skip;
|
||||||
struct ref_entry *found;
|
const char *conflicting_refname;
|
||||||
};
|
};
|
||||||
|
|
||||||
static int nonmatching_ref_fn(struct ref_entry *entry, void *vdata)
|
static int nonmatching_ref_fn(struct ref_entry *entry, void *vdata)
|
||||||
@ -853,7 +853,7 @@ static int nonmatching_ref_fn(struct ref_entry *entry, void *vdata)
|
|||||||
if (data->skip && string_list_has_string(data->skip, entry->name))
|
if (data->skip && string_list_has_string(data->skip, entry->name))
|
||||||
return 0;
|
return 0;
|
||||||
|
|
||||||
data->found = entry;
|
data->conflicting_refname = entry->name;
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -963,7 +963,8 @@ static int is_refname_available(const char *refname,
|
|||||||
if (!do_for_each_entry_in_dir(dir, 0, nonmatching_ref_fn, &data))
|
if (!do_for_each_entry_in_dir(dir, 0, nonmatching_ref_fn, &data))
|
||||||
return 1;
|
return 1;
|
||||||
|
|
||||||
error("'%s' exists; cannot create '%s'", data.found->name, refname);
|
error("'%s' exists; cannot create '%s'",
|
||||||
|
data.conflicting_refname, refname);
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user