From 17f1653ceb2971ff74055934cde33d4f2452d067 Mon Sep 17 00:00:00 2001
From: Roeland Jago Douma <roeland@famdouma.nl>
Date: Tue, 8 May 2018 20:52:14 +0200
Subject: [PATCH] If not in debug disable principal listing

Trashbin and Version should have the same behaviour as the other
collections.

Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
---
 apps/files_trashbin/lib/Sabre/RootCollection.php | 5 ++++-
 apps/files_versions/lib/Sabre/RootCollection.php | 6 +++++-
 2 files changed, 9 insertions(+), 2 deletions(-)

diff --git a/apps/files_trashbin/lib/Sabre/RootCollection.php b/apps/files_trashbin/lib/Sabre/RootCollection.php
index e425fb448e2..be31d200f71 100644
--- a/apps/files_trashbin/lib/Sabre/RootCollection.php
+++ b/apps/files_trashbin/lib/Sabre/RootCollection.php
@@ -23,14 +23,17 @@ declare(strict_types=1);
  */
 namespace OCA\Files_Trashbin\Sabre;
 
+use OCP\IConfig;
 use Sabre\DAV\INode;
 use Sabre\DAVACL\AbstractPrincipalCollection;
 use Sabre\DAVACL\PrincipalBackend;
 
 class RootCollection extends AbstractPrincipalCollection {
 
-	public function __construct(PrincipalBackend\BackendInterface $principalBackend) {
+	public function __construct(PrincipalBackend\BackendInterface $principalBackend, IConfig $config) {
 		parent::__construct($principalBackend, 'principals/users');
+
+		$this->disableListing = !$config->getSystemValue('debug', false);
 	}
 
 	/**
diff --git a/apps/files_versions/lib/Sabre/RootCollection.php b/apps/files_versions/lib/Sabre/RootCollection.php
index 397f1c55891..ca5979573b5 100644
--- a/apps/files_versions/lib/Sabre/RootCollection.php
+++ b/apps/files_versions/lib/Sabre/RootCollection.php
@@ -23,6 +23,7 @@
 namespace OCA\Files_Versions\Sabre;
 
 use OCP\Files\IRootFolder;
+use OCP\IConfig;
 use Sabre\DAV\INode;
 use Sabre\DAVACL\AbstractPrincipalCollection;
 use Sabre\DAVACL\PrincipalBackend;
@@ -33,10 +34,13 @@ class RootCollection extends AbstractPrincipalCollection {
 	private $rootFolder;
 
 	public function __construct(PrincipalBackend\BackendInterface $principalBackend,
-								IRootFolder $rootFolder) {
+								IRootFolder $rootFolder,
+								IConfig $config) {
 		parent::__construct($principalBackend, 'principals/users');
 
 		$this->rootFolder = $rootFolder;
+
+		$this->disableListing = !$config->getSystemValue('debug', false);
 	}
 
 	/**
-- 
GitLab