Uploaded image for project: 'JDK'
  1. JDK
  2. JDK-8006224

Doclint NPE for attribute with no value

    XMLWordPrintable

Details

    • Bug
    • Resolution: Fixed
    • P3
    • 8
    • None
    • tools
    • 8
    • b75

    Description

      Test case:

      /** */
      public class A {
          /**
           * <p id> no attr value </p>
           */
          public void foo();
      }

      Sample test command:
      > jtreg -dir:.../tl/langtools -jdk:.../build/linux-i586/j2sdk-image -w:work -r:-report -samevm -ignore:quiet -retain:all -verbose:all test/tools/doclint/A.java
      ...
      command: main DocLintTester A.java
      reason: User specified action: run main DocLintTester A.java
      elapsed time (seconds): 1.959
      STDOUT:
      STDERR:
      java.lang.NullPointerException
      at java.util.regex.Matcher.getTextLength(Matcher.java:1237)
      at java.util.regex.Matcher.reset(Matcher.java:308)
      at java.util.regex.Matcher.<init>(Matcher.java:228)
      at java.util.regex.Pattern.matcher(Pattern.java:1096)
      at com.sun.tools.doclint.Checker.visitAttribute(Checker.java:453)
      at com.sun.tools.doclint.Checker.visitAttribute(Checker.java:85)
      at com.sun.tools.javac.tree.DCTree$DCAttribute.accept(DCTree.java:153)
      at com.sun.source.util.DocTreeScanner.scan(DocTreeScanner.java:76)
      at com.sun.source.util.DocTreeScanner.scan(DocTreeScanner.java:91)
      at com.sun.source.util.DocTreeScanner.visitStartElement(DocTreeScanner.java:233)
      at com.sun.tools.doclint.Checker.visitStartElement(Checker.java:301)
      at com.sun.tools.doclint.Checker.visitStartElement(Checker.java:85)
      at com.sun.tools.javac.tree.DCTree$DCStartElement.accept(DCTree.java:684)
      at com.sun.source.util.DocTreeScanner.scan(DocTreeScanner.java:76)
      at com.sun.source.util.DocTreeScanner.scan(DocTreeScanner.java:91)
      at com.sun.source.util.DocTreeScanner.scanAndReduce(DocTreeScanner.java:99)
      at com.sun.source.util.DocTreeScanner.visitDocComment(DocTreeScanner.java:139)
      at com.sun.tools.doclint.Checker.visitDocComment(Checker.java:181)
      at com.sun.tools.doclint.Checker.visitDocComment(Checker.java:85)
      at com.sun.tools.javac.tree.DCTree$DCDocComment.accept(DCTree.java:105)
      at com.sun.source.util.DocTreeScanner.scan(DocTreeScanner.java:76)
      at com.sun.tools.doclint.Checker.scan(Checker.java:147)
      at com.sun.tools.doclint.DocLint$1.visitDecl(DocLint.java:150)
      at com.sun.tools.doclint.DocLint$DeclScanner.visitMethod(DocLint.java:362)
      at com.sun.tools.doclint.DocLint$DeclScanner.visitMethod(DocLint.java:351)
      at com.sun.tools.javac.tree.JCTree$JCMethodDecl.accept(JCTree.java:744)
      at com.sun.source.util.TreePathScanner.scan(TreePathScanner.java:67)
      at com.sun.source.util.TreeScanner.scanAndReduce(TreeScanner.java:80)
      at com.sun.source.util.TreeScanner.scan(TreeScanner.java:90)
      at com.sun.source.util.TreeScanner.scanAndReduce(TreeScanner.java:98)
      at com.sun.source.util.TreeScanner.visitClass(TreeScanner.java:132)
      at com.sun.tools.doclint.DocLint$DeclScanner.visitClass(DocLint.java:357)
      at com.sun.tools.doclint.DocLint$DeclScanner.visitClass(DocLint.java:351)
      at com.sun.tools.javac.tree.JCTree$JCClassDecl.accept(JCTree.java:671)
      at com.sun.source.util.TreePathScanner.scan(TreePathScanner.java:67)
      at com.sun.source.util.TreeScanner.scan(TreeScanner.java:90)
      at com.sun.source.util.TreeScanner.scanAndReduce(TreeScanner.java:98)
      at com.sun.source.util.TreeScanner.visitCompilationUnit(TreeScanner.java:119)
      at com.sun.tools.javac.tree.JCTree$JCCompilationUnit.accept(JCTree.java:545)
      at com.sun.source.util.TreePathScanner.scan(TreePathScanner.java:67)
      at com.sun.source.util.TreeScanner.scan(TreeScanner.java:90)
      at com.sun.tools.doclint.DocLint.run(DocLint.java:154)
      at DocLintTester.check(DocLintTester.java:79)
      at DocLintTester.run(DocLintTester.java:65)
      at DocLintTester.main(DocLintTester.java:42)
      at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
      at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
      at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
      at java.lang.reflect.Method.invoke(Method.java:477)
      at com.sun.javatest.regtest.MainAction$SameVMRunnable.run(MainAction.java:706)
      at java.lang.Thread.run(Thread.java:722)

      JavaTest Message: Test threw exception: java.lang.NullPointerException
      JavaTest Message: shutting down test



      Attachments

        Issue Links

          Activity

            People

              jjg Jonathan Gibbons
              strarup Peter Jensen (Inactive)
              Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: