From 85ee1007c4899475a182572f673012fada0430ca Mon Sep 17 00:00:00 2001 From: Geoff Munn Date: Sun, 13 Sep 2009 22:25:41 +0000 Subject: [PATCH] MINOR FIX: prevents looping over an empty array git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/cms/trunk@86166 467b73ca-7a2a-4603-9d3b-597d59a354a9 --- code/CMSMain.php | 33 +++++++++++++++++---------------- 1 file changed, 17 insertions(+), 16 deletions(-) diff --git a/code/CMSMain.php b/code/CMSMain.php index ef67acd8..da09a0d6 100644 --- a/code/CMSMain.php +++ b/code/CMSMain.php @@ -1102,24 +1102,25 @@ JS; $start = 0; $pages = DataObject::get("SiteTree", "", "", "", "$start,30"); $count = 0; - while(true) { - foreach($pages as $page) { - if($page && !$page->canPublish()) return Security::permissionFailure($this); - - $page->doPublish(); - $page->destroy(); - unset($page); - $count++; - $response .= "
  • $count
  • "; - } - if($pages->Count() > 29) { - $start += 30; - $pages = DataObject::get("SiteTree", "", "", "", "$start,30"); - } else { - break; + if($pages){ + while(true) { + foreach($pages as $page) { + if($page && !$page->canPublish()) return Security::permissionFailure($this); + + $page->doPublish(); + $page->destroy(); + unset($page); + $count++; + $response .= "
  • $count
  • "; + } + if($pages->Count() > 29) { + $start += 30; + $pages = DataObject::get("SiteTree", "", "", "", "$start,30"); + } else { + break; + } } } - $response .= sprintf(_t('CMSMain.PUBPAGES',"Done: Published %d pages"), $count); } else {