Fixed bug 377302: [painting] Enclosing brackets highlighting throws IAE
in MatchingCharacterPainter.draw(..)
diff --git a/org.eclipse.jface.text/src/org/eclipse/jface/text/source/MatchingCharacterPainter.java b/org.eclipse.jface.text/src/org/eclipse/jface/text/source/MatchingCharacterPainter.java
index 3fb9c56..5cc1925 100644
--- a/org.eclipse.jface.text/src/org/eclipse/jface/text/source/MatchingCharacterPainter.java
+++ b/org.eclipse.jface.text/src/org/eclipse/jface/text/source/MatchingCharacterPainter.java
@@ -20,7 +20,6 @@
 import org.eclipse.swt.graphics.Rectangle;
 
 import org.eclipse.jface.text.BadLocationException;
-import org.eclipse.jface.text.DocumentEvent;
 import org.eclipse.jface.text.IDocument;
 import org.eclipse.jface.text.IPaintPositionManager;
 import org.eclipse.jface.text.IPainter;
@@ -431,7 +430,7 @@
 	/**
 	 * Installs or uninstalls the text listener depending on the boolean parameter.
 	 * 
-	 * @param install <code>true</code> to install the text listener, <code>false</code> to uninstall 
+	 * @param install <code>true</code> to install the text listener, <code>false</code> to uninstall
 	 * 
 	 * @since 3.8
 	 */
@@ -484,20 +483,14 @@
 			if (!fHighlightEnclosingPeerCharacters || !(fMatcher instanceof ICharacterPairMatcherExtension))
 				return;
 
-			String text= event.getText();
-			String replacedText= event.getReplacedText();
-
-			boolean viewerRedrawState= event.getViewerRedrawState();
-			DocumentEvent documentEvent= event.getDocumentEvent();
-			if (documentEvent == null && !viewerRedrawState)
+			if (!event.getViewerRedrawState())
 				return;
 
+			String text= event.getText();
+			String replacedText= event.getReplacedText();
 			ICharacterPairMatcherExtension matcher= (ICharacterPairMatcherExtension)fMatcher;
-			boolean found= searchForCharacters(text, matcher) || searchForCharacters(replacedText, matcher);
-
-			if (found || (documentEvent == null && viewerRedrawState)) {
+			if (searchForCharacters(text, matcher) || searchForCharacters(replacedText, matcher))
 				paint(IPainter.INTERNAL);
-			}
 		}
 
 		/**