From ce7af4edb85db92b1440c77e247a7e5c34049496 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Roland=20H=C3=A4der?= Date: Sat, 16 Jul 2022 07:43:29 +0200 Subject: [PATCH] All these methods need to return an integer (0=Success) or otherwise doExecute() will return NULL. --- src/Console/ServerBlock.php | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/src/Console/ServerBlock.php b/src/Console/ServerBlock.php index 38ae35d10..c25b57ae7 100644 --- a/src/Console/ServerBlock.php +++ b/src/Console/ServerBlock.php @@ -118,6 +118,9 @@ HELP; foreach ($blocklist as $domain) { fputcsv($fp, $domain); } + + // Success + return 0; } /** * Imports a list of domains and a reason for the block from a CSV @@ -130,6 +133,7 @@ HELP; $filename = $this->getArgument(1); $currBlockList = $config->get('system', 'blocklist', []); $newBlockList = []; + if (($fp = fopen($filename, 'r')) !== false) { while (($data = fgetcsv($fp, 1000, ',')) !== false) { $domain = $data[0]; @@ -146,11 +150,13 @@ HELP; $newBlockList[] = $data; } } + foreach ($currBlockList as $blocked) { if (!in_array($blocked, $newBlockList)) { $newBlockList[] = $blocked; } } + if ($config->set('system', 'blocklist', $newBlockList)) { $this->out(sprintf("Entries from %s that were not blocked before are now blocked", $filename)); return 0; @@ -158,7 +164,6 @@ HELP; $this->out(sprintf("Couldn't save '%s' as blocked server", $domain)); return 1; } - } else { throw new Exception(sprintf('The file "%s" could not be opened for importing', $filename)); } @@ -178,6 +183,9 @@ HELP; $table->addRow($domain); } $this->out($table->getTable()); + + // Success + return 0; } /**