Andrew's git
/
gitweb.git
/ diff
summary
|
log
|
commit
| diff |
tree
commit
grep
author
committer
pickaxe
?
re
refs.c: remove fallback-to-main-store code get_submodule_ref_store()
author
Nguyễn Thái Ngọc Duy
<pclouds@gmail.com>
Wed, 23 Aug 2017 12:37:03 +0000
(19:37 +0700)
committer
Junio C Hamano
<gitster@pobox.com>
Thu, 24 Aug 2017 21:59:02 +0000
(14:59 -0700)
At this state, there are three get_submodule_ref_store() callers:
- for_each_remote_ref_submodule()
- handle_revision_pseudo_opt()
- resolve_gitlink_ref()
The first two deal explicitly with submodules (and we should never fall
back to the main ref store as a result). They are only called from
submodule.c:
- find_first_merges()
- submodule_needs_pushing()
- push_submodule()
The last one, as its name implies, deals only with submodules too, and
the "submodule" (path) argument must be a non-NULL, non-empty string.
So, this "if NULL or empty string" code block should never ever
trigger. And it's wrong to fall back to the main ref store
anyway. Delete it.
Signed-off-by: Nguyễn Thái Ngọc Duy <pclouds@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
refs.c
patch
|
blob
|
history
raw
|
patch
|
inline
| side by side (parent:
32619f9
)
diff --git
a/refs.c
b/refs.c
index 8c989ffec76c5186d342bc3eed3f864d98f11578..a0c5078901294b36856644c5d5d96980b6735df2 100644
(file)
--- a/
refs.c
+++ b/
refs.c
@@
-1587,6
+1587,9
@@
struct ref_store *get_submodule_ref_store(const char *submodule)
char *to_free = NULL;
size_t len;
char *to_free = NULL;
size_t len;
+ if (!submodule)
+ return NULL;
+
if (submodule) {
len = strlen(submodule);
while (len && is_dir_sep(submodule[len - 1]))
if (submodule) {
len = strlen(submodule);
while (len && is_dir_sep(submodule[len - 1]))
@@
-1595,14
+1598,6
@@
struct ref_store *get_submodule_ref_store(const char *submodule)
return NULL;
}
return NULL;
}
- if (!submodule || !*submodule) {
- /*
- * FIXME: This case is ideally not allowed. But that
- * can't happen until we clean up all the callers.
- */
- return get_main_ref_store();
- }
-
if (submodule[len])
/* We need to strip off one or more trailing slashes */
submodule = to_free = xmemdupz(submodule, len);
if (submodule[len])
/* We need to strip off one or more trailing slashes */
submodule = to_free = xmemdupz(submodule, len);