diff --git a/lib/setuplib.php b/lib/setuplib.php index c206d10fb68..cc1cd12030d 100644 --- a/lib/setuplib.php +++ b/lib/setuplib.php @@ -1193,7 +1193,12 @@ function make_upload_directory($directory, $exceptiononerror = true) { */ function make_temp_directory($directory, $exceptiononerror = true) { global $CFG; - protect_directory($CFG->tempdir); + if ($CFG->tempdir !== "$CFG->dataroot/temp") { + check_dir_exists($CFG->tempdir, true, true); + protect_directory($CFG->tempdir); + } else { + protect_directory($CFG->dataroot); + } return make_writable_directory("$CFG->tempdir/$directory", $exceptiononerror); } @@ -1206,7 +1211,12 @@ function make_temp_directory($directory, $exceptiononerror = true) { */ function make_cache_directory($directory, $exceptiononerror = true) { global $CFG; - protect_directory($CFG->cachedir); + if ($CFG->cachedir !== "$CFG->dataroot/cache") { + check_dir_exists($CFG->cachedir, true, true); + protect_directory($CFG->cachedir); + } else { + protect_directory($CFG->dataroot); + } return make_writable_directory("$CFG->cachedir/$directory", $exceptiononerror); }