summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAngie Byron <webchick@24967.no-reply.drupal.org>2009-07-10 03:46:33 +0000
committerAngie Byron <webchick@24967.no-reply.drupal.org>2009-07-10 03:46:33 +0000
commit0f3761b99d15c41907ab32a8a398840c14e871c4 (patch)
tree72067339a8199d5317c0faca1d84ec1fd8754ba1
parent6dee32f96c6e6299430d38d9e35a917b45f407e8 (diff)
downloadbrdo-0f3761b99d15c41907ab32a8a398840c14e871c4.tar.gz
brdo-0f3761b99d15c41907ab32a8a398840c14e871c4.tar.bz2
#515280 by drewish: Allow file_create_directory() to create recursively, taking advantage of PHP 5.
-rw-r--r--includes/file.inc4
-rw-r--r--modules/simpletest/tests/file.test2
2 files changed, 4 insertions, 2 deletions
diff --git a/includes/file.inc b/includes/file.inc
index 6cf3586df..4495aca9d 100644
--- a/includes/file.inc
+++ b/includes/file.inc
@@ -156,7 +156,9 @@ function file_check_directory(&$directory, $mode = 0, $form_item = NULL) {
// Check if directory exists.
if (!is_dir($directory)) {
- if (($mode & FILE_CREATE_DIRECTORY) && @mkdir($directory)) {
+ // Let mkdir() recursively create directories and use the default directory
+ // permissions.
+ if (($mode & FILE_CREATE_DIRECTORY) && @mkdir($directory, variable_get('file_chmod_directory', 0775), TRUE)) {
drupal_chmod($directory);
}
else {
diff --git a/modules/simpletest/tests/file.test b/modules/simpletest/tests/file.test
index bbf434055..b443777ba 100644
--- a/modules/simpletest/tests/file.test
+++ b/modules/simpletest/tests/file.test
@@ -672,7 +672,7 @@ class FileDirectoryTest extends FileTestCase {
*/
function testFileCheckDirectory() {
// A directory to operate on.
- $directory = file_directory_path() . '/' . $this->randomName();
+ $directory = file_directory_path() . '/' . $this->randomName() . '/' . $this->randomName();
$this->assertFalse(is_dir($directory), t('Directory does not exist prior to testing.'));
// Non-existent directory.