[
https://issues.apache.org/jira/browse/MSHARED-489?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15088035#comment-15088035
]
Michael Osipov commented on MSHARED-489:
----------------------------------------
Probably but what do you gain from linking an invalid URL? The browser will
complain. Unless there is a warning, no one will improve it anyway.
The `getValidHref` was some very strange code:
{code}
String hrefTmp;
if ( !href.endsWith( "/" ) )
{
hrefTmp = href + "/index.html";
}
else
{
hrefTmp = href + "index.html";
}
{code}
Does this really mean if my URL is {{http://sdfasf/wow.html}} or
{{ftp://sdfsdf/super.html}} a {{/index.html}} is added? I wouldn't expect any
URL manipulation here. {{/}} => {{/index.html}} is a websever/{{mod_dir}}
thing. Not our business.
> AbstractMavenReportRenderer#linkPatternedText ignores name if href is invalid
> -----------------------------------------------------------------------------
>
> Key: MSHARED-489
> URL: https://issues.apache.org/jira/browse/MSHARED-489
> Project: Maven Shared Components
> Issue Type: Bug
> Components: maven-reporting-impl
> Affects Versions: maven-reporting-impl 2.4
> Reporter: Michael Osipov
>
> Consider this input:
> {noformat}
> {My Text, ftp://host/file.txt} or {My Text, http:/host/file.txt} (typo)
> {noformat}
> The current output simply be {{ftp://host/file.txt}} or
> {{http:/host/file.txt}} but I would expect it to be {{My Text}} in both cases.
> The problem is burried in the current code:
> {code:java}
> for ( Iterator<String> it = segments.iterator(); it.hasNext(); )
> {
> String name = it.next();
> String href = it.next();
> if ( href == null )
> {
> text( name );
> }
> else
> {
> if ( getValidHref( href ) != null )
> {
> link( getValidHref( href ), name );
> }
> else
> {
> text( href );
> }
> }
> }
> {code}
> The invalid {{href}} would be printed out instead of {{name}}. I think the
> code should read:
> {code:java}
> for ( Iterator<String> it = segments.iterator(); it.hasNext(); )
> {
> String name = it.next();
> String href = it.next();
> if ( getValidHref( href ) == null )
> {
> text( name );
> }
> else
> {
> link( getValidHref( href ), name );
> }
> }
> {code}
> Produce link if href isn't null and is valid otherwise add name (text) only.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)