[
https://issues.apache.org/jira/browse/WW-5087?focusedWorklogId=485660&page=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-485660
]
ASF GitHub Bot logged work on WW-5087:
--------------------------------------
Author: ASF GitHub Bot
Created on: 17/Sep/20 10:59
Start Date: 17/Sep/20 10:59
Worklog Time Spent: 10m
Work Description: coveralls commented on pull request #439:
URL: https://github.com/apache/struts/pull/439#issuecomment-694157357
[](https://coveralls.io/builds/33531241)
Coverage increased (+0.007%) to 49.752% when pulling
**88a54d1fb084625228c046a91679dc8eabfa233a on yasserzamani:WW-5087master** into
**abb1c4d974ab48358d09bc509c6094b1569028fd on apache:master**.
----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
For queries about this service, please contact Infrastructure at:
[email protected]
Issue Time Tracking
-------------------
Worklog Id: (was: 485660)
Time Spent: 50m (was: 40m)
> AliasInterceptor doesn't properly handle Parameter.Empty
> --------------------------------------------------------
>
> Key: WW-5087
> URL: https://issues.apache.org/jira/browse/WW-5087
> Project: Struts 2
> Issue Type: Bug
> Components: Core Interceptors
> Affects Versions: 2.5.22
> Reporter: Brian Lenz
> Assignee: Yasser Zamani
> Priority: Major
> Fix For: 2.5.24, 2.6
>
> Time Spent: 50m
> Remaining Estimate: 0h
>
> As I reported on the mailing list, there is a bug with {{AliasInterceptor}}
> not handling the {{Parameter.Empty}} that is returned from
> {{HttpParameters.get()}}. Since {{HttpParameters.get()}} always returns a
> non-null value, the {{Evaluated}} object is treated as always being defined,
> which results in the empty value being set incorrectly on the stack.
> The bug was originally introduced here:
> https://github.com/apache/struts/commit/787f2f96eb9f1bb3c8012ab42aa222ae6286a91a#diff-b7b7c87c1012088e79dcc5a7bd9e8127R168
> The fix is easy; this code:
> {code:java}
> // workaround
> HttpParameters contextParameters = ActionContext.getContext().getParameters();
> if (null != contextParameters) {
> value = new Evaluated(contextParameters.get(name));
> }{code}
> needs to be updated to:
> {code:java}
> // workaround
> HttpParameters contextParameters = ActionContext.getContext().getParameters();
> if (null != contextParameters) {
> Parameter param = contextParameters.get(name);
> value = new Evaluated(param.isDefined() ? param : null);
> } {code}
> This way, it ensures the {{Evaluated}} value is only defined when appropriate.
>
--
This message was sent by Atlassian Jira
(v8.3.4#803005)