Skip to content
This repository was archived by the owner on Dec 5, 2024. It is now read-only.

Commit b5b03d6

Browse files
Letting the operations to count git objects and get lfs disk usage race
1 parent c9a172c commit b5b03d6

File tree

1 file changed

+20
-19
lines changed

1 file changed

+20
-19
lines changed

src/GitHub.Api/Application/ApplicationManagerBase.cs

Lines changed: 20 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -289,32 +289,33 @@ private void ConfigureMergeSettings()
289289

290290
private void CaptureRepoSize()
291291
{
292-
IProcessTask<int> diskUsageTask = null;
292+
GitClient.CountObjects()
293+
.Finally((success, gitObjects) =>
294+
{
295+
if (success)
296+
{
297+
UsageTracker.UpdateRepoSize(gitObjects.kilobytes);
298+
}
299+
})
300+
.Start();
301+
293302
var gitLfsDataPath = Environment.RepositoryPath.Combine(".git", "lfs");
294303
if (gitLfsDataPath.Exists())
295304
{
296-
diskUsageTask = Environment.IsWindows
305+
var diskUsageTask = Environment.IsWindows
297306
? (IProcessTask<int>)new WindowsDiskUsageTask(gitLfsDataPath, TaskManager.Token)
298307
: new LinuxDiskUsageTask(gitLfsDataPath, TaskManager.Token);
299308

300-
diskUsageTask.Configure(ProcessManager);
309+
diskUsageTask
310+
.Configure(ProcessManager)
311+
.Then((success, kilobytes) =>
312+
{
313+
if (success)
314+
{
315+
UsageTracker.UpdateLfsDiskUsage(kilobytes);
316+
}
317+
}).Start();
301318
}
302-
303-
GitClient.CountObjects()
304-
.Finally((b1, gitObjects) => {
305-
if (b1)
306-
{
307-
UsageTracker.UpdateRepoSize(gitObjects.kilobytes);
308-
}
309-
310-
diskUsageTask?.Then((b2, kilobytes) => {
311-
if (b2)
312-
{
313-
UsageTracker.UpdateLfsDiskUsage(kilobytes);
314-
}
315-
}).Start();
316-
})
317-
.Start();
318319
}
319320

320321
public void RestartRepository()

0 commit comments

Comments
 (0)