From c1c56ed52802fffb61fd7a680eceec8eb74808f1 Mon Sep 17 00:00:00 2001 From: Retro_Guy Date: Tue, 8 Aug 2023 05:54:15 -0700 Subject: [PATCH] Avoid crash in thread.inc.php when running huge expire. --- Rocksolid_Light/rocksolid/lib/thread.inc.php | 4 +++- Rocksolid_Light/rslight/scripts/expire.php | 4 +++- 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/Rocksolid_Light/rocksolid/lib/thread.inc.php b/Rocksolid_Light/rocksolid/lib/thread.inc.php index a6743ca..bcb2cbf 100644 --- a/Rocksolid_Light/rocksolid/lib/thread.inc.php +++ b/Rocksolid_Light/rocksolid/lib/thread.inc.php @@ -147,7 +147,9 @@ function thread_cache_removearticle($group,$id) { // now lets rebuild the tree... if(isset($value->answers)) foreach ($value->answers as $key => $answer) { - $thread[$answer]->isAnswer=false; + if(isset($thread[$answer])) { + $thread[$answer]->isAnswer=false; + } } if(isset($value->references)) foreach ($value->references as $reference) { diff --git a/Rocksolid_Light/rslight/scripts/expire.php b/Rocksolid_Light/rslight/scripts/expire.php index 43f0e40..26be9ad 100755 --- a/Rocksolid_Light/rslight/scripts/expire.php +++ b/Rocksolid_Light/rslight/scripts/expire.php @@ -76,7 +76,9 @@ file_put_contents($logfile, "\n".format_log_date()." ".$config_name." ".$group." echo "Expiring: ".$break[4]." IN: ".$group." #".$break[0]."\r\n"; file_put_contents($logfile, "\n".format_log_date()." ".$config_name." ".$group." Expiring: ".$break[4], FILE_APPEND); // Remove article from tradspool: - unlink($spooldir.'/articles/'.$grouppath.'/'.$break[0]); + if(is_file($spooldir.'/articles/'.$grouppath.'/'.$break[0])) { + unlink($spooldir.'/articles/'.$grouppath.'/'.$break[0]); + } thread_cache_removearticle($group,$break[4]); continue; } else {