Resolved a couple of NPEs.

2006-06-21  Lillian Angel  <[EMAIL PROTECTED]>

        * javax/swing/text/DefaultCaret.java
        (install): Added check to prevent NPE.
        (propertyChange): Added checks to prevent NPEs.

Index: javax/swing/text/DefaultCaret.java
===================================================================
RCS file: /cvsroot/classpath/classpath/javax/swing/text/DefaultCaret.java,v
retrieving revision 1.41
diff -u -r1.41 DefaultCaret.java
--- javax/swing/text/DefaultCaret.java	11 May 2006 16:29:29 -0000	1.41
+++ javax/swing/text/DefaultCaret.java	21 Jun 2006 15:32:34 -0000
@@ -221,9 +221,12 @@
       if (name.equals("document"))
         {
           Document oldDoc = (Document) e.getOldValue();
-          oldDoc.removeDocumentListener(documentListener);
+          if (oldDoc != null)
+            oldDoc.removeDocumentListener(documentListener);
+          
           Document newDoc = (Document) e.getNewValue();
-          newDoc.addDocumentListener(documentListener);
+          if (newDoc != null)
+            newDoc.addDocumentListener(documentListener);
         }
       else if (name.equals("editable"))
         {
@@ -708,7 +711,11 @@
     propertyChangeListener = new PropertyChangeHandler();
     textComponent.addPropertyChangeListener(propertyChangeListener);
     documentListener = new DocumentHandler();
-    textComponent.getDocument().addDocumentListener(documentListener);
+    
+    Document doc = textComponent.getDocument();
+    if (doc != null)
+      doc.addDocumentListener(documentListener);
+    
     active = textComponent.isEditable() && textComponent.isEnabled();
 
     repaint();

Reply via email to