An incomplete fix for the NPE bugs in ParallelReader.java
---------------------------------------------------------

                 Key: LUCENE-3780
                 URL: https://issues.apache.org/jira/browse/LUCENE-3780
             Project: Lucene - Java
          Issue Type: Bug
          Components: core/index
    Affects Versions: 3.0
            Reporter: Guangtai Liang
            Priority: Critical


The fix revision 407851 was aimed to remove an NPE bug on the  return value of  
"fieldToReader.get(field)" in the methods "getTermFreqVector", "hasNorms", 
"norms", "doSetNorm" of the file 
"/lucene/java/trunk/src/java/org/apache/lucene/index/ParallelReader.java
" , but it is incomplete. 
Since the returned value  "fieldToReader.get(field)" could be null during the 
runtime execution, its value should also be null-checked before being 
dereferenced in other methods. 

The buggy code locations the same fix needs to be applied at are as bellows: 
 
Line 499  of the method "ParallelTermEnum()" : 


public ParallelTermEnum() throws IOException {
      try {
        field = fieldToReader.firstKey();
      } catch(NoSuchElementException e) {
        // No fields, so keep field == null, termEnum == null
        return;
      }
      if (field != null)
[Line 499]        termEnum = fieldToReader.get(field).terms();
    }


--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscr...@lucene.apache.org
For additional commands, e-mail: dev-h...@lucene.apache.org

Reply via email to