From 2d7c3c9d27d6ce5d65d280afe0898a72661145db Mon Sep 17 00:00:00 2001 From: Jordi Boggiano Date: Sun, 25 Nov 2012 13:52:42 +0100 Subject: [PATCH] Tweak #1361 to re-enable support for unicode classnames --- src/Composer/Autoload/ClassMapGenerator.php | 4 ++-- tests/Composer/Test/Autoload/ClassMapGeneratorTest.php | 1 + tests/Composer/Test/Autoload/Fixtures/classmap/Unicode.php | 6 ++++++ 3 files changed, 9 insertions(+), 2 deletions(-) create mode 100644 tests/Composer/Test/Autoload/Fixtures/classmap/Unicode.php diff --git a/src/Composer/Autoload/ClassMapGenerator.php b/src/Composer/Autoload/ClassMapGenerator.php index 427d3342e..f79c23526 100644 --- a/src/Composer/Autoload/ClassMapGenerator.php +++ b/src/Composer/Autoload/ClassMapGenerator.php @@ -125,10 +125,10 @@ class ClassMapGenerator preg_match_all('{ (?: - \b(?])(?class|interface'.$traits.') \s+ (?\w+) + \b(?])(?class|interface'.$traits.') \s+ (?[^\s\{]+) | \b(?])(?namespace) (?\s+[^\s;{}\\\\]+(?:\s*\\\\\s*[^\s;{}\\\\]+)*)? \s*[\{;] ) - }ix', $contents, $matches); + }iux', $contents, $matches); $classes = array(); $namespace = ''; diff --git a/tests/Composer/Test/Autoload/ClassMapGeneratorTest.php b/tests/Composer/Test/Autoload/ClassMapGeneratorTest.php index 3856247de..3aea3a730 100644 --- a/tests/Composer/Test/Autoload/ClassMapGeneratorTest.php +++ b/tests/Composer/Test/Autoload/ClassMapGeneratorTest.php @@ -54,6 +54,7 @@ class ClassMapGeneratorTest extends \PHPUnit_Framework_TestCase 'Foo\\LargeClass' => realpath(__DIR__).'/Fixtures/classmap/LargeClass.php', 'Foo\\LargeGap' => realpath(__DIR__).'/Fixtures/classmap/LargeGap.php', 'Foo\\MissingSpace' => realpath(__DIR__).'/Fixtures/classmap/MissingSpace.php', + 'Unicode\\↑' => realpath(__DIR__).'/Fixtures/classmap/Unicode.php', )), array(__DIR__.'/Fixtures/template', array()), ); diff --git a/tests/Composer/Test/Autoload/Fixtures/classmap/Unicode.php b/tests/Composer/Test/Autoload/Fixtures/classmap/Unicode.php new file mode 100644 index 000000000..ddd9359cf --- /dev/null +++ b/tests/Composer/Test/Autoload/Fixtures/classmap/Unicode.php @@ -0,0 +1,6 @@ +