projects
/
git.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Optionally work without python
[git.git]
/
update-index.c
diff --git
a/update-index.c
b/update-index.c
index
be87b99
..
afec98d
100644
(file)
--- a/
update-index.c
+++ b/
update-index.c
@@
-367,7
+367,7
@@
static void read_index_info(int line_termination)
if (!tab || tab - ptr < 41)
goto bad_line;
if (!tab || tab - ptr < 41)
goto bad_line;
- if (tab[-2] == ' ' && '
1
' <= tab[-1] && tab[-1] <= '3') {
+ if (tab[-2] == ' ' && '
0
' <= tab[-1] && tab[-1] <= '3') {
stage = tab[-1] - '0';
ptr = tab + 1; /* point at the head of path */
tab = tab - 2; /* point at tail of sha1 */
stage = tab[-1] - '0';
ptr = tab + 1; /* point at the head of path */
tab = tab - 2; /* point at tail of sha1 */
@@
-534,10
+534,17
@@
int main(int argc, const char **argv)
struct strbuf buf;
strbuf_init(&buf);
while (1) {
struct strbuf buf;
strbuf_init(&buf);
while (1) {
+ char *path_name;
read_line(&buf, stdin, line_termination);
if (buf.eof)
break;
read_line(&buf, stdin, line_termination);
if (buf.eof)
break;
- update_one(buf.buf, prefix, prefix_length);
+ if (line_termination && buf.buf[0] == '"')
+ path_name = unquote_c_style(buf.buf, NULL);
+ else
+ path_name = buf.buf;
+ update_one(path_name, prefix, prefix_length);
+ if (path_name != buf.buf)
+ free(path_name);
}
}
if (active_cache_changed) {
}
}
if (active_cache_changed) {