@@ -1689,7 +1689,6 @@ int cmd_main(int argc, const char **argv)
struct refspec rs = REFSPEC_INIT_PUSH;
struct remote_lock *ref_lock = NULL;
struct remote_lock *info_ref_lock = NULL;
- struct rev_info revs;
int delete_branch = 0;
int force_delete = 0;
int objects_to_send;
@@ -1825,6 +1824,7 @@ int cmd_main(int argc, const char **argv)
new_refs = 0;
for (ref = remote_refs; ref; ref = ref->next) {
+ struct rev_info revs;
struct strvec commit_argv = STRVEC_INIT;
if (!ref->peer_ref)
@@ -1941,6 +1941,7 @@ int cmd_main(int argc, const char **argv)
unlock_remote(ref_lock);
check_locks();
strvec_clear(&commit_argv);
+ release_revisions(&revs);
}
/* Update remote server info if appropriate */
In the case of cmd_main() in http-push.c we need to move the deceleration of the "struct rev-list" into the loop over the "remote_refs" when adding a release_revisions(). We'd previously set up the "revs" for each remote, but would potentially leak memory on each one. Signed-off-by: Ævar Arnfjörð Bjarmason <avarab@gmail.com> --- http-push.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-)