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

[PATCH 02/17] convert: convert crlf_to_git to take an index

From
BWBrandon Williams <bmwill@google.com>
Date
Jun 12, 2017, 22:13 UTC
Message-ID
<20170612221408.173876-3-bmwill@google.com>
In-Reply-To
<20170612221408.173876-1-bmwill@google.com>
Signed-off-by: Brandon Williams <bmwill@google.com>
---
 convert.c | 14 ++++++++------
 1 file changed, 8 insertions(+), 6 deletions(-)
diff --git a/convert.c b/convert.c
index 03160b376..0cafb06f5 100644
--- a/convert.c
+++ b/convert.c
@@ -218,13 +218,13 @@ static void check_safe_crlf(const char *path, enum crlf_action crlf_action,
 	}
 }
 
-static int has_cr_in_index(const char *path)
+static int has_cr_in_index(const struct index_state *istate, const char *path)
 {
 	unsigned long sz;
 	void *data;
 	int has_cr;
 
-	data = read_blob_data_from_cache(path, &sz);
+	data = read_blob_data_from_index(istate, path, &sz);
 	if (!data)
 		return 0;
 	has_cr = memchr(data, '\r', sz) != NULL;
@@ -254,7 +254,8 @@ static int will_convert_lf_to_crlf(size_t len, struct text_stat *stats,
 
 }
 
-static int crlf_to_git(const char *path, const char *src, size_t len,
+static int crlf_to_git(const struct index_state *istate,
+		       const char *path, const char *src, size_t len,
 		       struct strbuf *buf,
 		       enum crlf_action crlf_action, enum safe_crlf checksafe)
 {
@@ -286,7 +287,8 @@ static int crlf_to_git(const char *path, const char *src, size_t len,
 		 * unless we want to renormalize in a merge or
 		 * cherry-pick.
 		 */
-		if ((checksafe != SAFE_CRLF_RENORMALIZE) && has_cr_in_index(path))
+		if ((checksafe != SAFE_CRLF_RENORMALIZE) &&
+		    has_cr_in_index(istate, path))
 			convert_crlf_into_lf = 0;
 	}
 	if ((checksafe == SAFE_CRLF_WARN ||
@@ -1098,7 +1100,7 @@ int convert_to_git(const char *path, const char *src, size_t len,
 		src = dst->buf;
 		len = dst->len;
 	}
-	ret |= crlf_to_git(path, src, len, dst, ca.crlf_action, checksafe);
+	ret |= crlf_to_git(&the_index, path, src, len, dst, ca.crlf_action, checksafe);
 	if (ret && dst) {
 		src = dst->buf;
 		len = dst->len;
@@ -1118,7 +1120,7 @@ void convert_to_git_filter_fd(const char *path, int fd, struct strbuf *dst,
 	if (!apply_filter(path, NULL, 0, fd, dst, ca.drv, CAP_CLEAN))
 		die("%s: clean filter '%s' failed", path, ca.drv->name);
 
-	crlf_to_git(path, dst->buf, dst->len, dst, ca.crlf_action, checksafe);
+	crlf_to_git(&the_index, path, dst->buf, dst->len, dst, ca.crlf_action, checksafe);
 	ident_to_git(path, dst->buf, dst->len, dst, ca.ident);
 }
 
-- 
2.13.1.518.g3df882009-goog
Previous: Brandon WilliamsNext: Brandon Williams
Message 3 of 18 in “convert ls-files internals to pass around an index”
  1. 00/17 convert ls-files internals to pass around an indexBrandon Williams, Jun 12, 2017
  2. 01/17 convert: convert get_cached_convert_stats_ascii to take an indexBrandon Williams, Jun 12, 2017
  3. 02/17 convert: convert crlf_to_git to take an indexBrandon Williams, Jun 12, 2017
  4. 03/17 convert: convert convert_to_git_filter_fd to take an indexBrandon Williams, Jun 12, 2017
  5. 04/17 convert: convert convert_to_git to take an indexBrandon Williams, Jun 12, 2017
  6. 07/17 ls-files: convert overlay_tree_on_cache to take an indexBrandon Williams, Jun 12, 2017
  7. 14/17 ls-files: convert show_ce_entry to take an indexBrandon Williams, Jun 12, 2017
  8. 13/17 ls-files: convert prune_cache to take an indexBrandon Williams, Jun 12, 2017
  9. 17/17 ls-files: factor out tag calculationBrandon Williams, Jun 12, 2017
  10. 12/17 ls-files: convert ce_excluded to take an indexBrandon Williams, Jun 12, 2017
  11. 15/17 ls-files: convert show_files to take an indexBrandon Williams, Jun 12, 2017
  12. 09/17 ls-files: convert show_killed_files to take an indexBrandon Williams, Jun 12, 2017
  13. 16/17 ls-files: factor out debug info into a functionBrandon Williams, Jun 12, 2017
  14. 10/17 ls-files: convert show_other_files to take an indexBrandon Williams, Jun 12, 2017
  15. 05/17 convert: convert renormalize_buffer to take an indexBrandon Williams, Jun 12, 2017
  16. 08/17 ls-files: convert write_eolinfo to take an indexBrandon Williams, Jun 12, 2017
  17. 06/17 tree: convert read_tree to take an index parameterBrandon Williams, Jun 12, 2017
  18. 11/17 ls-files: convert show_ru_info to take an indexBrandon Williams, Jun 12, 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.