threads / patch / 45555

v2read-cache: avoid using git_path() in freshen_shared_index()

Subject: [PATCH v2] read-cache: avoid using git_path() in freshen_shared_index()

## tl;dr

One message between Mar 30, 2017 and Mar 30, 2017. Diffs are folded; open one to read it.

replies: 0people: 1as markdown or json

Christian Couder· Mar 30, 2017, 21:03 UTC · lore

When performing an interactive rebase in split-index mode, the commit message that one should rework when squashing commits can contain some garbage instead of the usual concatenation of both of the commit messages.

Bisecting shows that c3a0082502 (read-cache: use freshen_shared_index() in read_index_from(), 2017-03-06) is involved, which points to the unsafe use of git_path() in freshen_shared_index().

Signed-off-by: Christian Couder <chriscool@tuxfamily.org>
---
The only changes in this v2 compared to the previous version are
in the title and commit message, which have been changed according
to:
http://public-inbox.org/git/CAP8UFD29xWU5bHwewUSq26pVTwK-gy3uSVG2aGTCrDak3620=A@mail.gmail.com/
 read-cache.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)
Show changes to read-cache.c +2 −1
diff --git a/read-cache.c b/read-cache.c
index e447751823..2f10242c24 100644
--- a/read-cache.c
+++ b/read-cache.c
@@ -1682,9 +1682,10 @@ int do_read_index(struct index_state *istate, const char *path, int must_exist)
  */
 static void freshen_shared_index(char *base_sha1_hex, int warn)
 {
-	const char *shared_index = git_path("sharedindex.%s", base_sha1_hex);
+	char *shared_index = git_pathdup("sharedindex.%s", base_sha1_hex);
 	if (!check_and_freshen_file(shared_index, 1) && warn)
 		warning("could not freshen shared index '%s'", shared_index);
+	free(shared_index);
 }
 
 int read_index_from(struct index_state *istate, const char *path)
-- 
2.12.0.rc0.23.g4ed838fb8d

← back to recent threads