Anonymous avatar Anonymous committed a94d994

update-index: work with c-quoted name

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 <>;

Comments (0)

Files changed (1)

 		struct strbuf buf;
 		while (1) {
+			char *path_name;
 			read_line(&buf, stdin, line_termination);
 			if (buf.eof)
-			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) {
Tip: Filter by directory path e.g. /media app.js to search for public/media/app.js.
Tip: Use camelCasing e.g. ProjME to search for
Tip: Filter by extension type e.g. /repo .js to search for all .js files in the /repo directory.
Tip: Separate your search with spaces e.g. /ssh pom.xml to search for src/ssh/pom.xml.
Tip: Use ↑ and ↓ arrow keys to navigate and return to view the file.
Tip: You can also navigate files with Ctrl+j (next) and Ctrl+k (previous) and view the file with Ctrl+o.
Tip: You can also navigate files with Alt+j (next) and Alt+k (previous) and view the file with Alt+o.