[Pkg-owncloud-commits] [owncloud] 90/205: Only update the htaccess ErrorDocument links when they are not set yet

David Prévot taffit at moszumanska.debian.org
Thu Jul 2 17:36:59 UTC 2015


This is an automated email from the git hooks/post-receive script.

taffit pushed a commit to branch stable8
in repository owncloud.

commit 0db311c9db3b1294625ff06b9cdc6116797bee4b
Author: Joas Schilling <nickvergessen at owncloud.com>
Date:   Tue Jun 23 15:24:21 2015 +0200

    Only update the htaccess ErrorDocument links when they are not set yet
---
 lib/private/setup.php | 18 ++++++++++++++----
 1 file changed, 14 insertions(+), 4 deletions(-)

diff --git a/lib/private/setup.php b/lib/private/setup.php
index 7ca30e1..1ffe074 100644
--- a/lib/private/setup.php
+++ b/lib/private/setup.php
@@ -402,10 +402,20 @@ class Setup {
 			throw new \OC\HintException('.htaccess file has the wrong version. Please upload the correct version. Maybe you forgot to replace it after updating?');
 		}
 
-		$content = "\n";
-		$content.= "ErrorDocument 403 ".\OC::$WEBROOT."/core/templates/403.php\n";//custom 403 error page
-		$content.= "ErrorDocument 404 ".\OC::$WEBROOT."/core/templates/404.php";//custom 404 error page
-		@file_put_contents($setupHelper->pathToHtaccess(), $content, FILE_APPEND); //suppress errors in case we don't have permissions for it
+		$htaccessContent = file_get_contents($setupHelper->pathToHtaccess());
+		$content = '';
+		if (strpos($htaccessContent, 'ErrorDocument 403') === false) {
+			//custom 403 error page
+			$content.= "\nErrorDocument 403 ".\OC::$WEBROOT."/core/templates/403.php";
+		}
+		if (strpos($htaccessContent, 'ErrorDocument 404') === false) {
+			//custom 404 error page
+			$content.= "\nErrorDocument 404 ".\OC::$WEBROOT."/core/templates/404.php";
+		}
+		if ($content !== '') {
+			//suppress errors in case we don't have permissions for it
+			@file_put_contents($setupHelper->pathToHtaccess(), $content . "\n", FILE_APPEND);
+		}
 	}
 
 	public static function protectDataDirectory() {

-- 
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/pkg-owncloud/owncloud.git



More information about the Pkg-owncloud-commits mailing list