From c20d629836ca98dd57c4b323edf05612b18a5d37 Mon Sep 17 00:00:00 2001
From: Lukas Reschke <lukas@owncloud.com>
Date: Fri, 26 Sep 2014 17:25:28 +0200
Subject: [PATCH] Try to create datadirectory to test whether the .htaccess
 works

Fixes https://github.com/owncloud/core/pull/11299#issuecomment-56968588 and also https://github.com/owncloud/core/issues/10628 together with https://github.com/owncloud/core/pull/11299#issuecomment-56968588 when backported.
---
 core/setup/controller.php | 7 ++++++-
 1 file changed, 6 insertions(+), 1 deletion(-)

diff --git a/core/setup/controller.php b/core/setup/controller.php
index 15679e3397..53f247e976 100644
--- a/core/setup/controller.php
+++ b/core/setup/controller.php
@@ -116,9 +116,14 @@ class Controller {
 
 		$errors = array();
 
-		if (is_dir($datadir) and is_writable($datadir)) {
+		// Create data directory to test whether the .htaccess works
+		// Notice that this is not necessarily the same data directory as the one
+		// that will effectively be used.
+		@mkdir($datadir);
+		if (is_dir($datadir) && is_writable($datadir)) {
 			// Protect data directory here, so we can test if the protection is working
 			\OC_Setup::protectDataDirectory();
+
 			try {
 				$htaccessWorking = \OC_Util::isHtaccessWorking();
 			} catch (\OC\HintException $e) {
-- 
GitLab