Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.kernel.org/pub/scm/git/git.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJunio C Hamano <gitster@pobox.com>2022-08-30 00:55:15 +0300
committerJunio C Hamano <gitster@pobox.com>2022-08-30 00:55:15 +0300
commitf0deb3f2b561c6275b8fcc179c561e7e8da943e0 (patch)
treeb0e7bd553518395073644f52817b959009ee40de
parentedc4f6d280392b8ba512441860d9b5c43657f5ae (diff)
parent23578904da8eef802752b48f9a2d4ea9f8a60c59 (diff)
Merge branch 'ad/preload-plug-memleak'
The preload-index codepath made copies of pathspec to give to multiple threads, which were left leaked. * ad/preload-plug-memleak: preload-index: fix memleak
-rw-r--r--preload-index.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/preload-index.c b/preload-index.c
index e5529a5863..100f7a374d 100644
--- a/preload-index.c
+++ b/preload-index.c
@@ -151,6 +151,12 @@ void preload_index(struct index_state *index,
}
stop_progress(&pd.progress);
+ if (pathspec) {
+ /* earlier we made deep copies for each thread to work with */
+ for (i = 0; i < threads; i++)
+ clear_pathspec(&data[i].pathspec);
+ }
+
trace_performance_leave("preload index");
trace2_data_intmax("index", NULL, "preload/sum_lstat", t2_sum_lstat);