From c0ef167514e97e0c64e49da090d3a352ed86bdb4 Mon Sep 17 00:00:00 2001 From: Mikael Nordfeldth Date: Mon, 28 Dec 2015 00:35:02 +0100 Subject: [PATCH 1/1] create storage directories automatically --- lib/installer.php | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/lib/installer.php b/lib/installer.php index 5e09c97329..971e2562b0 100644 --- a/lib/installer.php +++ b/lib/installer.php @@ -135,8 +135,14 @@ abstract class Installer // Check the subdirs used for file uploads $fileSubdirs = array('avatar', 'file'); foreach ($fileSubdirs as $fileSubdir) { - $fileFullPath = INSTALLDIR."/$fileSubdir/"; - if (!is_writable($fileFullPath)) { + $fileFullPath = INSTALLDIR."/$fileSubdir"; + if (!file_exists($fileFullPath)) { + $pass = $pass && mkdir($fileFullPath); + } elseif (!is_dir($fileFullPath)) { + $this->warning(sprintf('GNU social expected a directory but found something else on this path: %s', $fileFullPath), + 'Either make sure it goes to a directory or remove it and a directory will be created.'); + $pass = false; + } elseif (!is_writable($fileFullPath)) { $this->warning(sprintf('Cannot write to %s directory: %s', $fileSubdir, $fileFullPath), sprintf('On your server, try this command: chmod a+w %s', $fileFullPath)); $pass = false; -- 2.39.2