[PATCH - maint review] update-index: work with c-quoted name
- From
Junio C Hamano <junkio@cox.net>
- Date
- Jan 12, 2006, 00:04 UTC
- Message-ID
- <7vbqyil3a3.fsf@assigned-by-dhcp.cox.net>
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
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