Skip to content

Commit 2462eee

Browse files
Close response body per page in ui_get pagination loops
Avoids leaking HTTP connections when paging through assignees, milestones, branches, collaborators, and teams. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
1 parent 66e23ed commit 2462eee

1 file changed

Lines changed: 15 additions & 0 deletions

File tree

pkg/github/ui_tools.go

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -183,6 +183,9 @@ func uiGetAssignees(ctx context.Context, deps ToolDependencies, args map[string]
183183
return ghErrors.NewGitHubAPIErrorResponse(ctx, "failed to list assignees", resp, err), nil, nil
184184
}
185185
allAssignees = append(allAssignees, assignees...)
186+
if resp != nil && resp.Body != nil {
187+
_ = resp.Body.Close()
188+
}
186189
if resp.NextPage == 0 {
187190
break
188191
}
@@ -231,6 +234,9 @@ func uiGetMilestones(ctx context.Context, deps ToolDependencies, args map[string
231234
return ghErrors.NewGitHubAPIErrorResponse(ctx, "failed to list milestones", resp, err), nil, nil
232235
}
233236
allMilestones = append(allMilestones, milestones...)
237+
if resp != nil && resp.Body != nil {
238+
_ = resp.Body.Close()
239+
}
234240
if resp.NextPage == 0 {
235241
break
236242
}
@@ -314,6 +320,9 @@ func uiGetBranches(ctx context.Context, deps ToolDependencies, args map[string]a
314320
return ghErrors.NewGitHubAPIErrorResponse(ctx, "failed to list branches", resp, err), nil, nil
315321
}
316322
allBranches = append(allBranches, branches...)
323+
if resp != nil && resp.Body != nil {
324+
_ = resp.Body.Close()
325+
}
317326
if resp.NextPage == 0 {
318327
break
319328
}
@@ -447,6 +456,9 @@ func uiGetReviewers(ctx context.Context, deps ToolDependencies, args map[string]
447456
return ghErrors.NewGitHubAPIErrorResponse(ctx, "failed to list reviewers", resp, err), nil, nil
448457
}
449458
allCollaborators = append(allCollaborators, collaborators...)
459+
if resp != nil && resp.Body != nil {
460+
_ = resp.Body.Close()
461+
}
450462
if resp.NextPage == 0 {
451463
break
452464
}
@@ -461,6 +473,9 @@ func uiGetReviewers(ctx context.Context, deps ToolDependencies, args map[string]
461473
return ghErrors.NewGitHubAPIErrorResponse(ctx, "failed to list reviewer teams", resp, err), nil, nil
462474
}
463475
allTeams = append(allTeams, teams...)
476+
if resp != nil && resp.Body != nil {
477+
_ = resp.Body.Close()
478+
}
464479
if resp.NextPage == 0 {
465480
break
466481
}

0 commit comments

Comments
 (0)