JTextArea thows NPE on null font

XMLWordPrintable

    • Type: Bug
    • Resolution: Not an Issue
    • Priority: P4
    • None
    • Affects Version/s: 7
    • Component/s: client-libs

      Under some circumstances font object can be null.
      And it is legal to set null font on the Swing component.
      However, attempt to further use this component may cause NPE.

      Here is small testcase:

      import javax.swing.JTextArea;

      public class FTest {
          public static void main(String[] a) {
      JTextArea myArea=new JTextArea("",38, 55);
              myArea.setFont(null);
              
              myArea.setText(" Why NPE ");
          }
      }

      Exception in thread "main" java.lang.NullPointerException
              at javax.swing.text.Utilities.getTabbedTextWidth(Utilities.java:256)
              at javax.swing.text.Utilities.getTabbedTextWidth(Utilities.java:191)
              at javax.swing.text.PlainView.getLineWidth(PlainView.java:643)
              at javax.swing.text.PlainView.updateDamage(PlainView.java:541)
              at javax.swing.text.PlainView.insertUpdate(PlainView.java:425)
              at javax.swing.plaf.basic.BasicTextUI$RootView.insertUpdate(BasicTextUI.java:1589)
              at javax.swing.plaf.basic.BasicTextUI$UpdateHandler.insertUpdate(BasicTextUI.java:1848)
              at javax.swing.text.AbstractDocument.fireInsertUpdate(AbstractDocument.java:185)
              at javax.swing.text.AbstractDocument.handleInsertString(AbstractDocument.java:734)
              at javax.swing.text.AbstractDocument.insertString(AbstractDocument.java:693)
              at javax.swing.text.PlainDocument.insertString(PlainDocument.java:114)
              at javax.swing.text.AbstractDocument.replace(AbstractDocument.java:655)
              at javax.swing.text.JTextComponent.setText(JTextComponent.java:1693)
              at FTest.main(FTest.java:9)
      Java Result: 1

            Assignee:
            Peter Zhelezniakov
            Reporter:
            Igor Nekrestyanov (Inactive)
            Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

              Created:
              Updated:
              Resolved:
              Imported:
              Indexed: