| Index: editor/tools/plugins/com.google.dart.tools.ui/src/com/google/dart/tools/ui/internal/text/editor/SemanticHighlightingReconciler.java
|
| diff --git a/editor/tools/plugins/com.google.dart.tools.ui/src/com/google/dart/tools/ui/internal/text/editor/SemanticHighlightingReconciler.java b/editor/tools/plugins/com.google.dart.tools.ui/src/com/google/dart/tools/ui/internal/text/editor/SemanticHighlightingReconciler.java
|
| index c804c7712461ae7b6d887d25240a826bdbef36ef..6cd93873b4dc19a30224c695c652ba8fe32bab39 100644
|
| --- a/editor/tools/plugins/com.google.dart.tools.ui/src/com/google/dart/tools/ui/internal/text/editor/SemanticHighlightingReconciler.java
|
| +++ b/editor/tools/plugins/com.google.dart.tools.ui/src/com/google/dart/tools/ui/internal/text/editor/SemanticHighlightingReconciler.java
|
| @@ -303,6 +303,11 @@ public class SemanticHighlightingReconciler implements IDartReconcilingListener,
|
|
|
| @Override
|
| public void reconciled(DartUnit ast, boolean forced, IProgressMonitor progressMonitor) {
|
| + // don't update semantic highlighting if there are parsing problems to avoid "flashing"
|
| + if (ast.hasParseErrors()) {
|
| + return;
|
| + }
|
| +
|
| // ensure at most one thread can be reconciling at any time
|
| synchronized (fReconcileLock) {
|
| if (fIsReconciling) {
|
|
|