[
https://issues.apache.org/jira/browse/XERCESJ-1554?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Guangtai Liang reopened XERCESJ-1554:
-------------------------------------
I have provided the affects version info and an invalid schema file.
Thanks.
> An incomplete fix for the NPE bugs in IdentityConstraint.java
> -------------------------------------------------------------
>
> Key: XERCESJ-1554
> URL: https://issues.apache.org/jira/browse/XERCESJ-1554
> Project: Xerces2-J
> Issue Type: Bug
> Components: Other
> Affects Versions: 2.6.2
> Reporter: Guangtai Liang
> Priority: Critical
> Labels: incomplete_fix, missing_fixes
> Attachments: attP006.xsd
>
> Original Estimate: 10m
> Remaining Estimate: 10m
>
> The fix revision 320527 was aimed to remove an NPE bug on the
> "this.fSelector" in the method "getSelectorStr" of the file
> "/xerces/java/trunk/src/org/apache/xerces/impl/xs/identity/IdentityConstraint.java"
> , but it is incomplete.
> Since the "this.fSelector" is a class field and also could be null during the
> run-time execution, it 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 148 of the method "equals";
> public boolean equals(IdentityConstraint id) {
> boolean areEqual =
> fIdentityConstraintName.equals(id.fIdentityConstraintName);
> if(!areEqual) return false;
> areEqual = fSelector.toString().equals(id.fSelector.toString());
> if(!areEqual) return false;
> areEqual = (fFieldCount == id.fFieldCount);
> if(!areEqual) return false;
> for(int i=0; i<fFieldCount; i++)
> if(!fFields[i].toString().equals(id.fFields[i].toString()))
> return false;
> return true;
> } // equals
--
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: [email protected]
For additional commands, e-mail: [email protected]