diff --git a/lib/cronjobs/garbage_collector.class.php b/lib/cronjobs/garbage_collector.class.php
index 80d59f6403eef3fa11e4277dd676c44cfbc25a61..8bb0cbbe3bd7f013754b76b502d3e7aeb24d9c0c 100644
--- a/lib/cronjobs/garbage_collector.class.php
+++ b/lib/cronjobs/garbage_collector.class.php
@@ -58,7 +58,11 @@ class GarbageCollectorJob extends CronJob
         }
 
         // delete outdated news
-        $news_deletion_days = $parameters['news_deletion_days'] * 86400;
+        if (Config::get()->NEWS_DISABLE_GARBAGE_COLLECT) {
+            $news_deletion_days = false;
+        } else {
+            $news_deletion_days = $parameters['news_deletion_days'] * 86400;
+        }
         $deleted_news = StudipNews::DoGarbageCollect($news_deletion_days);
 
         // delete messages
diff --git a/lib/models/StudipNews.class.php b/lib/models/StudipNews.class.php
index 2d5652aa14fd14be0f642bc2f32c0fb56b86ec72..0c8c6f7e82d71e9ce3bb2d3968b70c5f3ae03885 100644
--- a/lib/models/StudipNews.class.php
+++ b/lib/models/StudipNews.class.php
@@ -398,47 +398,45 @@ class StudipNews extends SimpleORMap implements PrivacyObject
     public static function DoGarbageCollect($news_deletion_days = false)
     {
         $db = DBManager::get();
-        if (!Config::get()->NEWS_DISABLE_GARBAGE_COLLECT) {
-            $queries = [];
-            $parameters = [];
-
-            if ($news_deletion_days !== false) {
-                $queries[] = "SELECT news.news_id
-                              FROM news
-                              WHERE date + expire + ? < UNIX_TIMESTAMP()";
-                $parameters[] = (int) $news_deletion_days;
-            }
+        $queries = [];
+        $parameters = [];
 
-            $queries[] = "SELECT news_range.news_id
-                          FROM news_range
-                          LEFT JOIN news USING (news_id)
-                          WHERE news.news_id IS NULL";
+        if ($news_deletion_days !== false) {
             $queries[] = "SELECT news.news_id
                           FROM news
-                          LEFT JOIN news_range USING (news_id)
-                          WHERE range_id IS NULL";
-
-            $query = implode(' UNION DISTINCT ', $queries);
-            $stm = $db->prepare($query);
-            $stm->execute($parameters);
-            $result = $stm->fetchAll(PDO::FETCH_COLUMN);
-
-            if (count($result) > 0) {
-                $query = "DELETE FROM news WHERE news_id IN (?)";
-                $statement = DBManager::get()->prepare($query);
-                $statement->execute([$result]);
-                $killed = $statement->rowCount();
-
-                $query = "DELETE FROM news_range WHERE news_id IN (?)";
-                $statement = DBManager::get()->prepare($query);
-                $statement->execute([$result]);
-
-                object_kill_visits(null, $result);
-                object_kill_views($result);
-                StudipComment::DeleteCommentsByObject($result);
-            }
-            return $killed;
-        }
+                          WHERE date + expire + ? < UNIX_TIMESTAMP()";
+            $parameters[] = (int) $news_deletion_days;
+        }
+
+        $queries[] = "SELECT news_range.news_id
+                      FROM news_range
+                      LEFT JOIN news USING (news_id)
+                      WHERE news.news_id IS NULL";
+        $queries[] = "SELECT news.news_id
+                      FROM news
+                      LEFT JOIN news_range USING (news_id)
+                      WHERE range_id IS NULL";
+
+        $query = implode(' UNION DISTINCT ', $queries);
+        $stm = $db->prepare($query);
+        $stm->execute($parameters);
+        $result = $stm->fetchAll(PDO::FETCH_COLUMN);
+
+        if (count($result) > 0) {
+            $query = "DELETE FROM news WHERE news_id IN (?)";
+            $statement = $db->prepare($query);
+            $statement->execute([$result]);
+            $killed = $statement->rowCount();
+
+            $query = "DELETE FROM news_range WHERE news_id IN (?)";
+            $statement = $db->prepare($query);
+            $statement->execute([$result]);
+
+            object_kill_visits(null, $result);
+            object_kill_views($result);
+            StudipComment::DeleteCommentsByObject($result);
+        }
+        return $killed;
     }
 
     public static function DeleteNewsRanges($range_id)