8000 Don't dispose of Repository before it's used · github/VisualStudio@4db51b2 · GitHub
[go: up one dir, main page]

Skip to content
This repository was archived by the owner on Jun 21, 2023. It is now read-only.

Commit 4db51b2

Browse files
committed
Don't dispose of Repository before it's used
1 parent 7fb09a3 commit 4db51b2

File tree

1 file changed

+8
-5
lines changed

1 file changed

+8
-5
lines changed

src/GitHub.App/Services/PullRequestService.cs

Lines changed: 8 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -93,12 +93,13 @@ public IObservable<IReadOnlyList<CommitMessage>> GetMessagesForUniqueCommits(
9393
string compareBranch,
9494
int maxCommits)
9595
{
96-
return Observable.Defer(() =>
96+
return Observable.Defer(async () =>
9797
{
9898
// CommitMessage doesn't keep a reference to Repository
9999
using (var repo = gitService.GetRepository(repository.LocalPath))
100100
{
101-
return gitClient.GetMessagesForUniqueCommits(repo, baseBranch, compareBranch, maxCommits).ToObservable();
101+
var messages = await gitClient.GetMessagesForUniqueCommits(repo, baseBranch, compareBranch, maxCommits);
102+
return Observable.Return(messages);
102103
}
103104
});
104105
}
@@ -130,11 +131,12 @@ static bool IsFilthy(RepositoryStatus status)
130131

131132
public IObservable<Unit> Pull(ILocalRepositoryModel repository)
132133
{
133-
return Observable.Defer(() =>
134+
return Observable.Defer(async () =>
134135
{
135136
using (var repo = gitService.GetRepository(repository.LocalPath))
136137
{
137-
return gitClient.Pull(repo).ToObservable();
138+
await gitClient.Pull(repo);
139+
return Observable.Return(Unit.Default);
138140
}
139141
});
140142
}
@@ -147,7 +149,8 @@ public IObservable<Unit> Push(ILocalRepositoryModel repository)
147149
{
148150
var remoteName = repo.Head.RemoteName;
149151
var remote = await gitClient.GetHttpRemote(repo, remoteName);
150-
return gitClient.Push(repo, repo.Head.TrackedBranch.UpstreamBranchCanonicalName, remote.Name).ToObservable();
152+
await gitClient.Push(repo, repo.Head.TrackedBranch.UpstreamBranchCanonicalName, remote.Name);
153+
return Observable.Return(Unit.Default);
151154
}
152155
});
153156
}

0 commit comments

Comments
 (0)
0