diff --git a/core/Command/Encryption/DecryptAll.php b/core/Command/Encryption/DecryptAll.php
index 8d7d26f3d2345d38e5b57ef70e6af51aba10ee65..e8aec064f25ae1746597be0910f1a26bc40faddb 100644
--- a/core/Command/Encryption/DecryptAll.php
+++ b/core/Command/Encryption/DecryptAll.php
@@ -111,7 +111,8 @@ class DecryptAll extends Command {
 		$this->addArgument(
 			'user',
 			InputArgument::OPTIONAL,
-			'user for which you want to decrypt all files (optional)'
+			'user for which you want to decrypt all files (optional)',
+			''
 		);
 	}
 
diff --git a/lib/private/Encryption/DecryptAll.php b/lib/private/Encryption/DecryptAll.php
index 8676bc095752892fe38c8b113729a50cea2d5da4..34a3e1bff911af33c8c8f7ba0be33229d67a1981 100644
--- a/lib/private/Encryption/DecryptAll.php
+++ b/lib/private/Encryption/DecryptAll.php
@@ -80,7 +80,7 @@ class DecryptAll {
 		$this->input = $input;
 		$this->output = $output;
 
-		if (!empty($user) && $this->userManager->userExists($user) === false) {
+		if ($user !== '' && $this->userManager->userExists($user) === false) {
 			$this->output->writeln('User "' . $user . '" does not exist. Please check the username and try again');
 			return false;
 		}
@@ -141,7 +141,7 @@ class DecryptAll {
 		$this->output->writeln("\n");
 
 		$userList = [];
-		if (empty($user)) {
+		if ($user === '') {
 
 			$fetchUsersProgress = new ProgressBar($this->output);
 			$fetchUsersProgress->setFormat(" %message% \n [%bar%]");
diff --git a/tests/lib/Encryption/DecryptAllTest.php b/tests/lib/Encryption/DecryptAllTest.php
index ffcbbc74a99a566953633f176f8afa1e7a11bc2e..d7cf2fb7baf73d8e6020aff5313fcbc9ab57f56b 100644
--- a/tests/lib/Encryption/DecryptAllTest.php
+++ b/tests/lib/Encryption/DecryptAllTest.php
@@ -86,13 +86,25 @@ class DecryptAllTest extends TestCase {
 		$this->invokePrivate($this->instance, 'output', [$this->outputInterface]);
 	}
 
+	public function dataDecryptAll() {
+		return [
+			[true, 'user1', true],
+			[false, 'user1', true],
+			[true, '0', true],
+			[false, '0', true],
+			[true, '', false],
+		];
+	}
+
 	/**
-	 * @dataProvider dataTrueFalse
+	 * @dataProvider dataDecryptAll
 	 * @param bool $prepareResult
+	 * @param string $user
+	 * @param bool $userExistsChecked
 	 */
-	public function testDecryptAll($prepareResult, $user) {
+	public function testDecryptAll($prepareResult, $user, $userExistsChecked) {
 
-		if (!empty($user)) {
+		if ($userExistsChecked) {
 			$this->userManager->expects($this->once())->method('userExists')->willReturn(true);
 		} else {
 			$this->userManager->expects($this->never())->method('userExists');
@@ -125,15 +137,6 @@ class DecryptAllTest extends TestCase {
 		$instance->decryptAll($this->inputInterface, $this->outputInterface, $user);
 	}
 
-	public function dataTrueFalse() {
-		return [
-			[true, 'user1'],
-			[false, 'user1'],
-			[true, ''],
-			[true, null]
-		];
-	}
-
 	/**
 	 * test decrypt all call with a user who doesn't exists
 	 */
@@ -147,8 +150,16 @@ class DecryptAllTest extends TestCase {
 		);
 	}
 
+	public function dataTrueFalse() {
+		return [
+			[true],
+			[false],
+		];
+	}
+
 	/**
 	 * @dataProvider dataTrueFalse
+	 * @param bool $success
 	 */
 	public function testPrepareEncryptionModules($success) {