@@ -22,7 +22,7 @@ namespace Microsoft.CodeQL.Views
2222 /// </summary>
2323 public partial class CodeQLQuerySelectorPage : INotifyPropertyChanged
2424 {
25- private static ObservableCollection < string > _discoveredQueryPacks ;
25+ private static ObservableCollection < string > _discoveredQueryPacks = new ObservableCollection < string > ( ) ;
2626
2727 public ObservableCollection < string > DiscoveredQueryPacks
2828 {
@@ -40,8 +40,6 @@ public ObservableCollection<string> DiscoveredQueryPacks
4040 bool _hasActivated = false ;
4141 public CodeQLQuerySelectorPage ( )
4242 {
43- _discoveredQueryPacks = new ObservableCollection < string > ( ) ;
44- DiscoveredQueryPacks = new ObservableCollection < string > ( ) ;
4543 Owner = Application . Current . MainWindow ;
4644 InitializeComponent ( ) ;
4745 DataContext = this ;
@@ -95,16 +93,20 @@ private void ButtonCancel_Click(object sender, RoutedEventArgs e)
9593 }
9694 private void ButtonRefresh_Click ( object sender , RoutedEventArgs e )
9795 {
96+ _discoveredQueryPacks = new ObservableCollection < string > ( ) ;
9897 LoadAvailableQueriesAsync ( ) . FileAndForget ( "Microsoft/SARIF/Viewer/CodeQL/Failed" ) ;
9998 }
10099
101100 private async Task LoadAvailableQueriesAsync ( )
102101 {
103102 if ( CodeQLService . CodeQLIsInstalled ( ) )
104103 {
105- RefreshBar . Visibility = Visibility . Visible ;
106- DiscoveredQueryPacks = await CodeQLService . Instance . FindAvailableQueriesAsync ( ) ;
107- RefreshBar . Visibility = Visibility . Hidden ;
104+ if ( _discoveredQueryPacks . Count == 0 )
105+ {
106+ RefreshBar . Visibility = Visibility . Visible ;
107+ DiscoveredQueryPacks = await CodeQLService . Instance . FindAvailableQueriesAsync ( ) ;
108+ RefreshBar . Visibility = Visibility . Hidden ;
109+ }
108110 }
109111 }
110112 }
0 commit comments