Index: t3lib/cache/backend/class.t3lib_cache_backend_filebackend.php =================================================================== --- t3lib/cache/backend/class.t3lib_cache_backend_filebackend.php (revision 7190) +++ t3lib/cache/backend/class.t3lib_cache_backend_filebackend.php (working copy) @@ -93,9 +93,18 @@ public function setCacheDirectory($cacheDirectory) { $documentRoot = PATH_site; - // resetting if an absolute path is given - if ($cacheDirectory{0} == '/') { - $documentRoot = '/'; + if (TYPO3_OS === 'WIN') { + // convert backslashes on window machines + $cacheDirectory = str_replace('\\', '/', $cacheDirectory); + // look for absolute path + if (strpos($cacheDirectory, ':/') !== FALSE) { // Windows path + $documentRoot = ''; + } + } else { + // resetting if an absolute path is given + if ($cacheDirectory{0} == '/') { // Linux path + $documentRoot = '/'; + } } if ($cacheDirectory{strlen($cacheDirectory) - 1} !== '/') { @@ -111,14 +120,14 @@ if (!is_dir($documentRoot . $cacheDirectory)) { throw new t3lib_cache_Exception( - 'The directory "' . $cacheDirectory . '" does not exist.', + 'The directory "' . $documentRoot . $cacheDirectory . '" does not exist.', 1203965199 ); } if (!is_writable($documentRoot . $cacheDirectory)) { throw new t3lib_cache_Exception( - 'The directory "' . $cacheDirectory . '" is not writable.', + 'The directory "' . $documentRoot . $cacheDirectory . '" is not writable.', 1203965200 ); }