[
https://issues.apache.org/jira/browse/CMIS-1014?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Jens Hübel resolved CMIS-1014.
------------------------------
Resolution: Fixed
> Incorrect validation: sub-expression is always false
> ----------------------------------------------------
>
> Key: CMIS-1014
> URL: https://issues.apache.org/jira/browse/CMIS-1014
> Project: Chemistry
> Issue Type: Bug
> Components: opencmis-server
> Affects Versions: OpenCMIS 1.0.0
> Reporter: AppChecker
> Assignee: Jens Hübel
>
> Hi!
> There is
> [condition|https://github.com/apache/chemistry-opencmis/blob/48ec4de7547025fdca1d10c6bee439751373ecbd/chemistry-opencmis-server/chemistry-opencmis-server-inmemory/src/main/java/org/apache/chemistry/opencmis/inmemory/NameValidator.java#L75]:
> {code:xml}
> if (c == '\\' || c == '/' || c == '\"' || c == ':' || c == '*' ||
> c == '?' || c == '<' || c == '>'
> && c == '|') {
> return false;
> }
> {code}
> This expression is equivalent to:
> (c == '\\' || c == '/' || c == '\"' || c == ':' || c == '*' || c == '?' || c
> == '<' || ( c == '>'
> && c == '|' ) )
> but
> (c == '>' && c == '|') is always false.
> So, condition is equivalent to
> (c == '\\' || c == '/' || c == '\"' || c == ':' || c == '*' || c == '?' || c
> == '<' || false)
> or
> (c == '\\' || c == '/' || c == '\"' || c == ':' || c == '*' || c == '?' || c
> == '<' )
> Probably need to replace the '&' to '||'
> This possible defect found by
> [AppChecker|https://cnpo.ru/en/solutions/appchecker.php]
--
This message was sent by Atlassian JIRA
(v6.3.15#6346)