Last modified: 2010-06-14 16:39:03 UTC
Very very long URLs from Google imagesearch in the form "http://images.google.de/imgres?imgurl=http://...=http://..." are broken before the third "http" into two different URLs. Please see testcase at [[:de:Benutzer:Raymond/LongURL]].
we currently support only one url in an url :( Caused by a preg_match on bits[$i+1] in Parser.php # special case: handle urls as url args: # http://www.example.com/foo?=http://www.example.com/bar if(strlen($trail) == 0 && isset($bits[$i]) && preg_match('/^'. wfUrlProtocols() . '$/S', $bits[$i]) && preg_match( '/^('.EXT_LINK_URL_CLASS.'+)(.*)$/s', $bits[$i + 1], $m )) { Maybe we should loop through the bits until there is nothing to do :)
Created attachment 2228 [details] One-line fix Here's a one-line fix with a parser test case.
Created attachment 4062 [details] Corrected patch This is the same patch with line numbers corrected for r25248
Seems to have been fixed at some point, since original test case WFM with trunk. Feel free to reopen if you can replicate this on a recent(ish) copy of MediaWiki.