git/list[1] front-page[2] threads[3] people[4] search[5] about
 

[PATCH v2 3/9] refs: remove some unnecessary handling of submodule == ""

From
Michael Haggerty <mhagger@alum.mit.edu>
Date
Feb 10, 2017, 11:16 UTC
Message-ID
<c005d19654fd1aae2d542560911b2a92437b89fe.1486724698.git.mhagger@alum.mit.edu>
In-Reply-To
<cover.1486724698.git.mhagger@alum.mit.edu>

The only external entry point to the ref_store lookup functions is get_ref_store(), which ensures that submodule == "" is passed along as NULL. So ref_store_init() and lookup_ref_store() don't have to handle submodule being specified as the empty string.

Signed-off-by: Michael Haggerty <mhagger@alum.mit.edu>
---
 refs.c | 13 ++-----------
 1 file changed, 2 insertions(+), 11 deletions(-)
diff --git a/refs.c b/refs.c
index d7265cc..6348414 100644
--- a/refs.c
+++ b/refs.c
@@ -1362,15 +1362,12 @@ static struct ref_store *submodule_ref_stores;
  * Return the ref_store instance for the specified submodule (or the
  * main repository if submodule is NULL). If that ref_store hasn't
  * been initialized yet, return NULL.
- *
- * For backwards compatibility, submodule=="" is treated the same as
- * submodule==NULL.
  */
 static struct ref_store *lookup_ref_store(const char *submodule)
 {
 	struct ref_store *refs;
 
-	if (!submodule || !*submodule)
+	if (!submodule)
 		return main_ref_store;
 
 	for (refs = submodule_ref_stores; refs; refs = refs->next) {
@@ -1384,9 +1381,6 @@ static struct ref_store *lookup_ref_store(const char *submodule)
 /*
  * Create, record, and return a ref_store instance for the specified
  * submodule (or the main repository if submodule is NULL).
- *
- * For backwards compatibility, submodule=="" is treated the same as
- * submodule==NULL.
  */
 static struct ref_store *ref_store_init(const char *submodule)
 {
@@ -1396,10 +1390,7 @@ static struct ref_store *ref_store_init(const char *submodule)
 	if (!be)
 		die("BUG: reference backend %s is unknown", be_name);
 
-	if (!submodule || !*submodule)
-		return be->init(NULL);
-	else
-		return be->init(submodule);
+	return be->init(submodule);
 }
 
 struct ref_store *get_ref_store(const char *submodule)
-- 
2.9.3
Previous: Michael HaggertyNext: Michael Haggerty
Message 11 of 18 in “Store submodules in a hash, not a linked list”
  1. 0/9 Store submodules in a hash, not a linked listMichael Haggerty, Feb 10, 2017
  2. 2/9 refs: make some ref_store lookup functions privateMichael Haggerty, Feb 10, 2017
  3. 7/9 base_ref_store_init(): remove submodule argumentMichael Haggerty, Feb 10, 2017
  4. 9/9 read_loose_refs(): read refs using resolve_ref_recursively()Michael Haggerty, Feb 10, 2017
  5. Junio C HamanoFeb 10, 2017
  6. Michael HaggertyFeb 13, 2017
  7. Junio C HamanoFeb 13, 2017
  8. 6/9 refs: push the submodule attribute downMichael Haggerty, Feb 10, 2017
  9. 4/9 register_ref_store(): new functionMichael Haggerty, Feb 10, 2017
  10. 8/9 files_ref_store::submodule: use NULL for the main repositoryMichael Haggerty, Feb 10, 2017
  11. 3/9 refs: remove some unnecessary handling of submodule == ""Michael Haggerty, Feb 10, 2017
  12. 1/9 refs: reorder some function definitionsMichael Haggerty, Feb 10, 2017
  13. Junio C HamanoFeb 10, 2017
  14. 5/9 refs: store submodule ref stores in a hashmapMichael Haggerty, Feb 10, 2017
  15. Jeff KingFeb 10, 2017
  16. Stefan BellerFeb 10, 2017
  17. Junio C HamanoFeb 10, 2017
  18. David TurnerFeb 13, 2017

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.