[BUGFIX] Respect PATH_site in t3lib_autoloader::getAutoloadCacheIdentifier
authorFrederic Gaus, Flagbit GmbH & Co. KG <gaus@flagbit.de>
Fri, 16 Sep 2011 14:34:49 +0000 (16:34 +0200)
committerHelmut Hummel <typo3@helmut-hummel.de>
Sun, 18 Sep 2011 17:13:02 +0000 (19:13 +0200)
Function t3lib_autoloader::getAutoloadCacheIdentifier now respects the constant
PATH_site. This is needed because otherwise a fatal error occures when the
path to webroot changes (e.g. moving site to another webserver)

Change-Id: I9755da82cbf71914d47bc0523bacc8413addcf63
Resolves: #29901
Releases: 4.6
Reviewed-on: http://review.typo3.org/5000
Reviewed-by: Steffen Gebert
Tested-by: Steffen Gebert
Reviewed-by: Helmut Hummel
Tested-by: Helmut Hummel
t3lib/class.t3lib_autoloader.php

index 9f08672..ab41c11 100644 (file)
@@ -225,17 +225,19 @@ class t3lib_autoloader {
        /**
         * Gets the identifier used for caching the registry files.
         * The identifier depends on whether or not frontend or backend
-        * is called and on the current TYPO3 version.
+        * is called, on the current TYPO3 version and the installation path
+        * of the TYPO3 site (PATH_site).
         *
-        * In effect, if updating TYPO3 to a newer version with possible new
-        * core classes a new registry cache file will be created.
+        * In effect, a new registry cache file will be created
+        * when moving to a newer version with possible new core classes
+        * or moving the webroot to another absolute path.
         *
         * @return string identifier
         */
        protected static function getAutoloadCacheIdentifier() {
                if (is_null(self::$autoloadCacheIdentifier)) {
                        $frontendOrBackend = TYPO3_MODE === 'FE' ? 'FE' : 'BE';
-                       self::$autoloadCacheIdentifier = sha1($frontendOrBackend . TYPO3_version . 'autoload');
+                       self::$autoloadCacheIdentifier = sha1($frontendOrBackend . TYPO3_version . PATH_site . 'autoload');
                }
                return self::$autoloadCacheIdentifier;
        }