Changeset 1027

Show
Ignore:
Timestamp:
11/10/07 23:28:44 (10 months ago)
Author:
mikey
Message:

prevent calling of autoload() from PHP's reflection class in case class or interface does not exist

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • trunk/src/main/php/net/stubbles/reflection/stubReflectionClass.php

    r940 r1027  
    4545        if (strstr($className, '.') !== false) { 
    4646            $nqClassName = stubClassLoader::getNonQualifiedClassName($className); 
    47             if (class_exists($nqClassName, false) == false) { 
     47            if (class_exists($nqClassName, false) === false) { 
    4848                stubClassLoader::load($className); 
    4949            } 
    5050             
    5151            $className = $nqClassName; 
    52         } 
     52        // prevent autoload from being called by the internal reflection class 
     53        } elseif (class_exists($className, false) === false && interface_exists($className, false) === false) { 
     54            throw new ReflectionException('Class ' . $className . ' does not exist'); 
     55        } 
     56         
    5357        $this->className = $className; 
    5458        parent::__construct($className);