@@ -1437,14 +1437,14 @@ public IEnumerable<DiagnosticRecord> AnalyzeSyntaxTree(
1437
1437
string fileName = filePathIsNullOrWhiteSpace ? String . Empty : System . IO . Path . GetFileName ( filePath ) ;
1438
1438
if ( this . ScriptRules != null )
1439
1439
{
1440
- var tasks = this . ScriptRules . Select ( scriptRule => Task . Factory . StartNew ( ( ) =>
1441
- {
1442
- bool helpRule = String . Equals ( scriptRule . GetName ( ) , "PSUseUTF8EncodingForHelpFile" , StringComparison . OrdinalIgnoreCase ) ;
1440
+ var allowedRules = this . ScriptRules . Where ( IsRuleAllowed ) ;
1443
1441
1444
- if ( IsRuleAllowed ( scriptRule ) )
1442
+ if ( allowedRules . Any ( ) )
1443
+ {
1444
+ var tasks = allowedRules . Select ( scriptRule => Task . Factory . StartNew ( ( ) =>
1445
1445
{
1446
+ bool helpRule = String . Equals ( scriptRule . GetName ( ) , "PSUseUTF8EncodingForHelpFile" , StringComparison . OrdinalIgnoreCase ) ;
1446
1447
List < object > result = new List < object > ( ) ;
1447
-
1448
1448
result . Add ( string . Format ( CultureInfo . CurrentCulture , Strings . VerboseRunningMessage , scriptRule . GetName ( ) ) ) ;
1449
1449
1450
1450
// Ensure that any unhandled errors from Rules are converted to non-terminating errors
@@ -1478,26 +1478,26 @@ public IEnumerable<DiagnosticRecord> AnalyzeSyntaxTree(
1478
1478
}
1479
1479
1480
1480
verboseOrErrors . Add ( result ) ;
1481
- }
1482
- } ) ) ;
1481
+ } ) ) ;
1483
1482
1484
- Task . Factory . ContinueWhenAll ( tasks . ToArray ( ) , t => verboseOrErrors . CompleteAdding ( ) ) ;
1483
+ Task . Factory . ContinueWhenAll ( tasks . ToArray ( ) , t => verboseOrErrors . CompleteAdding ( ) ) ;
1485
1484
1486
- while ( ! verboseOrErrors . IsCompleted )
1487
- {
1488
- List < object > data = null ;
1489
- try
1485
+ while ( ! verboseOrErrors . IsCompleted )
1490
1486
{
1491
- data = verboseOrErrors . Take ( ) ;
1492
- }
1493
- catch ( InvalidOperationException ) { }
1487
+ List < object > data = null ;
1488
+ try
1489
+ {
1490
+ data = verboseOrErrors . Take ( ) ;
1491
+ }
1492
+ catch ( InvalidOperationException ) { }
1494
1493
1495
- if ( data != null )
1496
- {
1497
- this . outputWriter . WriteVerbose ( data [ 0 ] as string ) ;
1498
- if ( data . Count == 2 )
1494
+ if ( data != null )
1499
1495
{
1500
- this . outputWriter . WriteError ( data [ 1 ] as ErrorRecord ) ;
1496
+ this . outputWriter . WriteVerbose ( data [ 0 ] as string ) ;
1497
+ if ( data . Count == 2 )
1498
+ {
1499
+ this . outputWriter . WriteError ( data [ 1 ] as ErrorRecord ) ;
1500
+ }
1501
1501
}
1502
1502
}
1503
1503
}
0 commit comments