Explorar el Código

[Framework] fix ClassCollectionLoader not taking interfaces into account

Fabien Potencier hace 14 años
padre
commit
2c1fb7b3ec
Se han modificado 1 ficheros con 3 adiciones y 3 borrados
  1. 3 3
      src/Symfony/Framework/ClassCollectionLoader.php

+ 3 - 3
src/Symfony/Framework/ClassCollectionLoader.php

@@ -38,18 +38,18 @@ class ClassCollectionLoader
             return;
         }
 
+        self::$loaded[$name] = true;
+
         $classes = array_unique($classes);
 
         if ($adaptive) {
             // don't include already declared classes
-            $classes = array_diff($classes, get_declared_classes());
+            $classes = array_diff($classes, get_declared_classes(), get_declared_interfaces());
 
             // the cache is different depending on which classes are already declared
             $name = $name.'-'.substr(md5(implode('|', $classes)), 0, 5);
         }
 
-        self::$loaded[$name] = true;
-
         $cache = $cacheDir.'/'.$name.'.php';
 
         // auto-reload