threads / patch / 3047

patchupdate-index: work with c-quoted name

Subject: [PATCH - maint review] update-index: work with c-quoted name

## tl;dr

One message between Jan 12, 2006 and Jan 12, 2006. Diffs are folded; open one to read it.

replies: 0people: 1as markdown or json

Junio C Hamano· Jan 12, 2006, 00:04 UTC · lore

update-index --stdin did not work with c-style quoted names even though update-index --index-info did. This fixes the inconsistency.

Signed-off-by: Junio C Hamano <junkio@cox.net>
---
 * For 1.0.10 and 1.1.2
 update-index.c |    9 ++++++++-
 1 files changed, 8 insertions(+), 1 deletions(-)
a94d9948da539fdafc26c74afb335b2fe9f8f21d
Show changes to update-index.c +8 −1
diff --git a/update-index.c b/update-index.c
index be87b99..a84a04f 100644
--- a/update-index.c
+++ b/update-index.c
@@ -534,10 +534,17 @@ int main(int argc, const char **argv)
 		struct strbuf buf;
 		strbuf_init(&buf);
 		while (1) {
+			char *path_name;
 			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) {
-- 
1.1.1-g8ecb

← back to recent threads