X-Git-Url: https://git.heureux-cyclage.org/?p=lhc%2Fweb%2Fwiklou.git;a=blobdiff_plain;f=tests%2Fphpunit%2Flanguages%2FLanguageConverterTest.php;h=fc2ed33b6561e3376327653a10ae58d36cf90e2e;hp=81184aaadb9da0d826b52631b912db7bac42bb84;hb=f600b4ede9a6390cc5e929d2a48ed98af2edbc60;hpb=c340c41b37b5079ba90489f6b212bb8e4642031a diff --git a/tests/phpunit/languages/LanguageConverterTest.php b/tests/phpunit/languages/LanguageConverterTest.php index 81184aaadb..fc2ed33b65 100644 --- a/tests/phpunit/languages/LanguageConverterTest.php +++ b/tests/phpunit/languages/LanguageConverterTest.php @@ -157,6 +157,25 @@ class LanguageConverterTest extends MediaWikiLangTestCase { $wgRequest->setVal( 'variant', null ); $this->assertEquals( 'tg', $this->lc->getPreferredVariant() ); } + + /** + * Test exhausting pcre.backtrack_limit + */ + public function testAutoConvertT124404() { + $testString = ''; + for ( $i = 0; $i < 1000; $i++ ) { + $testString .= 'xxx xxx xxx'; + } + $testString .= "\n"; + $old = ini_set( 'pcre.backtrack_limit', 200 ); + $result = $this->lc->autoConvert( $testString, 'tg-latn' ); + ini_set( 'pcre.backtrack_limit', $old ); + // The в in the id attribute should not get converted to a v + $this->assertFalse( + strpos( $result, 'v' ), + "в converted to v despite being in attribue" + ); + } } /**