ID:72160
 
Resolved
Fixed in 442
BYOND Version:441
Operating System:Windows Server 2008 SP1 [Version 6.0.6001]
Web Browser:Firefox 3.5
Status: Resolved (442)

This issue has been resolved.
Descriptive Problem Summary:
This has been happing for sometime, byond:/ is parse as a byond:// link in the output on most byond versions.

It can also lead to problems as if the byond:/link is click the user is logout of the game.

The options and messages box shows up connecting to byond:/byond://This_is_not_right

Numbered Steps to Reproduce Problem:
The code snippet is one way. Another is to go on any game and use a say verb with byond:/This_is_not_right link.

Code Snippet (if applicable) to Reproduce Problem:
mob
Login()
world << "byond:/This_is_not_right"
world << "byond://This_is_right"
return ..()


Expected Results:
byond:/This_is_not_right to not be parse

Actual Results:
byond:/This_is_not_right is parse as a byond link

Does the problem occur:
Every time? Or how often? Works almost everytime
In other games? All apart from a few which block byond links.
In other user accounts? All of them
On other computers? Yeap

When does the problem NOT occur? Always

Workarounds: Manipulate the text with own code to make the link right before outputting.

I typed "byond:testin". It appeared as a link. Clicking it caused this to happen.

Connecting to byond://byond:testin.....failed

That isn't parsed quite right.
This appears to be intended behavior. A couple of our protocols (including http) are parsed with the expectation that the user may forget a slash and that it's okay if they do.

Yota, your test was not the same as the original poster's in that you did not use a slash at all. In this case the URL parser does not recognize anything as a valid protocol, and so it's defaulting to byond:// as a protocol. This too is correct behavior, since if you entered LummoxJR.Incursion in the "Open Location" part of the pager, you'd want thtat to take you to byond://LummoxJR.Incursion instead.
I stand corrcted. This was definitely incorrect behavior; only certain protocols make slashes optional in our parser, and byond:// is not one of them. This is a case of the HTML parser incorrectly linkifying text.