summaryrefslogtreecommitdiff
path: root/entry.c
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@linux-foundation.org>2007-02-13 17:23:59 (GMT)
committerJunio C Hamano <junkio@cox.net>2007-02-13 18:12:37 (GMT)
commitbd3a5b5ee5cc627dc278d2028fb017161705fe02 (patch)
tree59cfa8118819e1f2006311c075c905ebe4ca64c3 /entry.c
parente19b91b4ea8479da3bb3cd600c94d63d04bb8ac2 (diff)
downloadgit-bd3a5b5ee5cc627dc278d2028fb017161705fe02.zip
git-bd3a5b5ee5cc627dc278d2028fb017161705fe02.tar.gz
git-bd3a5b5ee5cc627dc278d2028fb017161705fe02.tar.bz2
Mark places that need blob munging later for CRLF conversion.
Here's a patch that I think we can merge right now. There may be other places that need this, but this at least points out the three places that read/write working tree files for git update-index, checkout and diff respectively. That should cover a lot of it [jc: git-apply uses an entirely different codepath both for reading and writing]. Some day we can actually implement it. In the meantime, this points out a place for people to start. We *can* even start with a really simple "we do CRLF conversion automatically, regardless of filename" kind of approach, that just look at the data (all three cases have the _full_ file data already in memory) and says "ok, this is text, so let's convert to/from DOS format directly". THAT somebody can write in ten minutes, and it would already make git much nicer on a DOS/Windows platform, I suspect. And it would be totally zero-cost if you just make it a config option (but please make it dynamic with the _default_ just being 0/1 depending on whether it's UNIX/Windows, just so that UNIX people can _test_ it easily). Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org> Signed-off-by: Junio C Hamano <junkio@cox.net>
Diffstat (limited to 'entry.c')
-rw-r--r--entry.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/entry.c b/entry.c
index 0ebf0f0..c2641dd 100644
--- a/entry.c
+++ b/entry.c
@@ -89,6 +89,7 @@ static int write_entry(struct cache_entry *ce, char *path, struct checkout *stat
return error("git-checkout-index: unable to create file %s (%s)",
path, strerror(errno));
}
+ /* FIXME: LF -> CRLF conversion goes here, based on "ce->name" */
wrote = write_in_full(fd, new, size);
close(fd);
free(new);