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

[PATCH v2 3/3] convert.c: Remove duplicate code

From
LFLukas Fleischer <git@cryptocrack.de>
Date
Apr 13, 2013, 13:28 UTC
Message-ID
<1365859712-8400-3-git-send-email-git@cryptocrack.de>
In-Reply-To
<1365859712-8400-1-git-send-email-git@cryptocrack.de>

has_cr_in_index() is an almost 1:1 copy of read_blob_data_from_index_path() with some additions. Invoke read_blob_data_from_index_path() instead of using copy-pasted code.

Signed-off-by: Lukas Fleischer <git@cryptocrack.de>
---
 convert.c | 27 ++-------------------------
 1 file changed, 2 insertions(+), 25 deletions(-)
diff --git a/convert.c b/convert.c
index 3520252..a12bc78 100644
--- a/convert.c
+++ b/convert.c
@@ -153,36 +153,13 @@ static void check_safe_crlf(const char *path, enum crlf_action crlf_action,
 
 static int has_cr_in_index(const char *path)
 {
-	int pos, len;
 	unsigned long sz;
-	enum object_type type;
 	void *data;
 	int has_cr;
-	struct index_state *istate = &the_index;
 
-	len = strlen(path);
-	pos = index_name_pos(istate, path, len);
-	if (pos < 0) {
-		/*
-		 * We might be in the middle of a merge, in which
-		 * case we would read stage #2 (ours).
-		 */
-		int i;
-		for (i = -pos - 1;
-		     (pos < 0 && i < istate->cache_nr &&
-		      !strcmp(istate->cache[i]->name, path));
-		     i++)
-			if (ce_stage(istate->cache[i]) == 2)
-				pos = i;
-	}
-	if (pos < 0)
+	data = read_blob_data_from_index_path(path, NULL, &sz);
+	if (!data)
 		return 0;
-	data = read_sha1_file(istate->cache[pos]->sha1, &type, &sz);
-	if (!data || type != OBJ_BLOB) {
-		free(data);
-		return 0;
-	}
-
 	has_cr = memchr(data, '\r', sz) != NULL;
 	free(data);
 	return has_cr;
-- 
1.8.2.675.gda3bb24.dirty
Previous: Lukas FleischerNext: Junio C Hamano
Message 9 of 12 in “Remove ~25 lines of duplicate code”
  1. 0/3 Remove ~25 lines of duplicate codeLukas Fleischer, Apr 12, 2013
  2. 1/3 Make read_index_data() publicLukas Fleischer, Apr 12, 2013
  3. Jeff KingApr 12, 2013
  4. Lukas FleischerApr 13, 2013
  5. 2/3 Add size parameter to read_index_data()Lukas Fleischer, Apr 12, 2013
  6. 3/3 convert.c: Remove duplicate codeLukas Fleischer, Apr 12, 2013
  7. 1/3 Add public function read_blob_data_from_index_path()Lukas Fleischer, Apr 13, 2013
  8. 2/3 Add size parameter to read_blob_data_from_index_path()Lukas Fleischer, Apr 13, 2013
  9. 3/3 convert.c: Remove duplicate codeLukas Fleischer, Apr 13, 2013
  10. Junio C HamanoApr 14, 2013
  11. Junio C HamanoApr 14, 2013
  12. Lukas FleischerApr 14, 2013

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.