7

A comment of mine contains the text See also: http://languagelearning.stackexchange.com‌​. However, this appears as See also: languagelearning.stackexchange.com‌​;. (where did that semi-colon come from?), and it links to http://languagelearning.stackexchange.xn--com-cn0a/, which doesn't exist.

8
  • I can't imagine what funky software that'd be, @ShadowWizard. I'm running Firefox on Ubuntu with no weird settings. Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:48.0) Gecko/20100101 Firefox/48.0
    – TRiG
    Commented Aug 15, 2016 at 14:20
  • 1
    From '12: From where does this semicolon come from?, though that was caused by the "
    – Floern
    Commented Aug 15, 2016 at 14:22
  • I only noticed this now, so I can't recall. I think it was, copy URL from address bar, paste, hit backspace to remove trailing slash, type full stop, hit enter to submit comment.
    – TRiG
    Commented Aug 15, 2016 at 14:23
  • whoa.. sorry for my assumptions. Turns out it wasn't you indeed. Commented Aug 15, 2016 at 14:28
  • I'm going to have to read the suggested dupe more carefully. I was under the impression that it applied only to code.
    – TRiG
    Commented Aug 15, 2016 at 14:30
  • This might be a change I pushed today.
    – Sklivvz
    Commented Aug 15, 2016 at 18:57
  • If it is, then this doesn't seem to be a dupe of a '13 question. Commented Aug 16, 2016 at 5:44
  • @Sklivvz can you please remove the close votes? I'm afraid it's still in the Close review, and people might miss the fact it's not a dupe. Sorry for that! Commented Aug 16, 2016 at 17:50

1 Answer 1

5

This has been fixed and will be out in the next deployment.

TL;DR: Regex.

Long version: We introduce a non-visible, optional separator entity every 20 characters to make comments wrap. This has to be removed and taken into account when we linkify URLs. The Regex did not match the last ; as it's a valid separator for URLs: if you write http://example.com; the matched URL should be http://example.com. Unfortunately in some rare cases these separators would be introduced just at the right (wrong) spot. In the case linked, the URL with separators inserted ended with a separator and thus a semicolon like so

See also: http://languagelearn‌​ing.stackexchange.com‌​.

and so the URL parsed was

http://languagelearn‌​ing.stackexchange.com‌&#8203

without the trailing ;. Once we remove the separator this gives

http://languagelearning.stackexchange.com‌&#8203

which is what you found the link was pointing to. The semicolon that appears is also because of this.

I've improved muchly complicated the regex so it matches the separator at the end but not a normal semicolon.


Update: The new regex had other problems. I'm reverting for now, pending a real fix tomorrow. The battle of the regex rages on. I shall prevail.


Done.

5
  • 2
    Any chance this caused a new bug? Commented Aug 16, 2016 at 17:52
  • 2
    Yes.. I'm undoing and fixing tomorrow.
    – Sklivvz
    Commented Aug 16, 2016 at 18:16
  • Thanks, and good luck! Commented Aug 16, 2016 at 18:30
  • 1
    Just to make sure you're aware, probably caused by this change. Commented Aug 16, 2016 at 18:46
  • 1
    @DanielFischer not caused by this, but it has a similar cause
    – Sklivvz
    Commented Aug 16, 2016 at 19:20

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .