This fixes an NPE in BasicTextUI, seen with Protege. 2006-06-03 Roman Kennke <[EMAIL PROTECTED]>
PR 27418
* javax/swing/plaf/basic/BasicTextUI.java
(damageRange): Added null check to avoid NPE.
/Roman
--
“Improvement makes straight roads, but the crooked roads, without
Improvement, are roads of Genius.” - William Blake
Index: javax/swing/plaf/basic/BasicTextUI.java
===================================================================
RCS file: /cvsroot/classpath/classpath/javax/swing/plaf/basic/BasicTextUI.java,v
retrieving revision 1.83
diff -u -1 -0 -r1.83 BasicTextUI.java
--- javax/swing/plaf/basic/BasicTextUI.java 16 May 2006 18:57:33 -0000 1.83
+++ javax/swing/plaf/basic/BasicTextUI.java 3 Jun 2006 15:28:59 -0000
@@ -1032,21 +1032,26 @@
// BadLocationExceptions. This makes it possible for the highlighter
// to send us illegal values which can happen when a large number
// of selected characters are removed (eg. by pressing delete
// or backspace).
// The reference implementation does not throw an exception, too.
p0 = Math.min(p0, t.getDocument().getLength());
p1 = Math.min(p1, t.getDocument().getLength());
Rectangle l1 = modelToView(t, p0, firstBias);
Rectangle l2 = modelToView(t, p1, secondBias);
- if (l1.y == l2.y)
+ if (l1 == null || l2 == null)
+ {
+ // Unable to determine the start or end of the selection.
+ t.repaint();
+ }
+ else if (l1.y == l2.y)
{
SwingUtilities.computeUnion(l2.x, l2.y, l2.width, l2.height, l1);
t.repaint(l1);
}
else
{
// The two rectangles lie on different lines and we need a
// different algorithm to calculate the damaged area:
// 1. The line of p0 is damaged from the position of p0
// to the right border.
signature.asc
Description: Dies ist ein digital signierter Nachrichtenteil
