mirror of
https://github.com/sourcegit-scm/sourcegit
synced 2025-06-05 02:54:59 +00:00
enhance: prevent requesting revision files more than once time
Signed-off-by: leo <longshuang@msn.cn>
This commit is contained in:
parent
d56c6a5030
commit
eb183589f5
1 changed files with 10 additions and 1 deletions
|
@ -149,6 +149,7 @@ namespace SourceGit.ViewModels
|
|||
_diffContext = null;
|
||||
_viewRevisionFileContent = null;
|
||||
_cancellationSource = null;
|
||||
_requestingRevisionFiles = false;
|
||||
_revisionFiles = null;
|
||||
_revisionFileSearchSuggestion = null;
|
||||
}
|
||||
|
@ -546,6 +547,7 @@ namespace SourceGit.ViewModels
|
|||
private void Refresh()
|
||||
{
|
||||
_changes = null;
|
||||
_requestingRevisionFiles = false;
|
||||
_revisionFiles = null;
|
||||
|
||||
SignInfo = null;
|
||||
|
@ -812,16 +814,22 @@ namespace SourceGit.ViewModels
|
|||
{
|
||||
if (_revisionFiles == null)
|
||||
{
|
||||
if (_requestingRevisionFiles)
|
||||
return;
|
||||
|
||||
var sha = Commit.SHA;
|
||||
_requestingRevisionFiles = true;
|
||||
|
||||
Task.Run(() =>
|
||||
{
|
||||
var files = new Commands.QueryRevisionFileNames(_repo.FullPath, sha).Result();
|
||||
Dispatcher.UIThread.Invoke(() =>
|
||||
{
|
||||
if (sha == Commit.SHA)
|
||||
if (sha == Commit.SHA && _requestingRevisionFiles)
|
||||
{
|
||||
_revisionFiles = files;
|
||||
_requestingRevisionFiles = false;
|
||||
|
||||
if (!string.IsNullOrEmpty(_revisionFileSearchFilter))
|
||||
CalcRevisionFileSearchSuggestion();
|
||||
}
|
||||
|
@ -907,6 +915,7 @@ namespace SourceGit.ViewModels
|
|||
private DiffContext _diffContext = null;
|
||||
private object _viewRevisionFileContent = null;
|
||||
private CancellationTokenSource _cancellationSource = null;
|
||||
private bool _requestingRevisionFiles = false;
|
||||
private List<string> _revisionFiles = null;
|
||||
private string _revisionFileSearchFilter = string.Empty;
|
||||
private List<string> _revisionFileSearchSuggestion = null;
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue