Pārlūkot izejas kodu

Modificada llamada a preg_replace con eval

Daniel Libonati 8 gadi atpakaļ
vecāks
revīzija
87e93ae73c

+ 11 - 4
src/Symfony/Bundle/FrameworkBundle/DependencyInjection/Compiler/RegisterKernelListenersPass.php

@@ -33,10 +33,17 @@ class RegisterKernelListenersPass implements CompilerPassInterface
                 }
 
                 if (!isset($event['method'])) {
-                    $event['method'] = 'on'.preg_replace(array(
-                        '/(?<=\b)[a-z]/ie',
-                        '/[^a-z0-9]/i'
-                    ), array('strtoupper("\\0")', ''), $event['event']);
+
+		    $strRes = $event['event'];
+
+		    $strRes = preg_replace_callback('/(?<=\b)[a-z]/i',
+                        	function ($match) {
+                            		return strtoupper($match[0]);},
+				$strRes);
+
+    		    $strRes = preg_replace('/[^a-z0-9]/i','',$strRes);
+
+		    $event['method'] = 'on'.$strRes;
                 }
 
                 $definition->addMethodCall('addListenerService', array($event['event'], array($id, $event['method']), $priority));