diff options
| author | Jeff Tilson <jrtilson@gmail.com> | 2013-04-29 13:38:42 -0400 | 
|---|---|---|
| committer | Jeff Tilson <jrtilson@gmail.com> | 2013-04-29 13:38:42 -0400 | 
| commit | cd7922c58f3f2d04b8ca4bcf336ecda2787c821e (patch) | |
| tree | d28191d8dd17fce4d307a290c1c2cf1168a98d1d | |
| parent | 11c8b773274e3e7217eb7e842448ceb592541c63 (diff) | |
| download | elgg-cd7922c58f3f2d04b8ca4bcf336ecda2787c821e.tar.gz elgg-cd7922c58f3f2d04b8ca4bcf336ecda2787c821e.tar.bz2  | |
Fixes #2057 (broken internet archive links)
| -rw-r--r-- | engine/lib/output.php | 2 | ||||
| -rw-r--r-- | engine/tests/regression/trac_bugs.php | 9 | 
2 files changed, 10 insertions, 1 deletions
diff --git a/engine/lib/output.php b/engine/lib/output.php index 6905b9b71..5adc01053 100644 --- a/engine/lib/output.php +++ b/engine/lib/output.php @@ -27,7 +27,7 @@ function parse_urls($text) {  	// By default htmlawed rewrites tags to this format.  	// if PHP supported conditional negative lookbehinds we could use this:  	// $r = preg_replace_callback('/(?<!=)(?<![ ])?(?<!["\'])((ht|f)tps?:\/\/[^\s\r\n\t<>"\'\!\(\),]+)/i', -	$r = preg_replace_callback('/(?<!=)(?<!["\'])((ht|f)tps?:\/\/[^\s\r\n\t<>"\'\(\)]+)/i', +	$r = preg_replace_callback('/(?<![=\/"\'])((ht|f)tps?:\/\/[^\s\r\n\t<>"\'\(\)]+)/i',  	create_function(  		'$matches',  		' diff --git a/engine/tests/regression/trac_bugs.php b/engine/tests/regression/trac_bugs.php index 4de9c306b..b791dcad3 100644 --- a/engine/tests/regression/trac_bugs.php +++ b/engine/tests/regression/trac_bugs.php @@ -288,4 +288,13 @@ class ElggCoreRegressionBugsTest extends ElggCoreUnitTest {  			$this->assertEqual($output, parse_urls($input));  		}  	} + +	/** +	 * Test #2057 -- parse_urls() +	 * https://github.com/Elgg/Elgg/issues/2057 +	 */ +	public function test_archive_url() { +		$input = '<a href="http://web.archive.org/web/20000229040250/http://www.google.com/">google</a>'; +		$this->assertEqual($input, parse_urls($input)); +	}  }  | 
