From 45815e2c6d2d1611b1615d74283541a20afb58f5 Mon Sep 17 00:00:00 2001 From: Daniel Rudolf Date: Thu, 1 Oct 2015 17:22:14 +0200 Subject: [PATCH] Don't read file contents of inaccessible pages --- lib/Pico.php | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/lib/Pico.php b/lib/Pico.php index 4420e9e..bd2f72d 100644 --- a/lib/Pico.php +++ b/lib/Pico.php @@ -717,6 +717,13 @@ class Pico } $id = substr($file, strlen($this->getConfig('content_dir')), -strlen($this->getConfig('content_ext'))); + + // drop inaccessible pages (e.g. drop "sub.md" if "sub/index.md" exists) + $conflictFile = $this->getConfig('content_dir') . $id . '/index' . $this->getConfig('content_ext'); + if (in_array($conflictFile, $files, true)) { + continue; + } + $url = $this->getPageUrl($id); if ($file != $this->requestFile) { $rawContent = file_get_contents($file); @@ -726,13 +733,6 @@ class Pico $meta = &$this->meta; } - // drop inaccessible pages (e.g. drop "sub.md" if "sub/index.md" exists) - if (substr($id, -6) === '/index') { - unset($pages[dirname($id)]); - } elseif (isset($pages[$id . '/index'])) { - continue; - } - // build page data // title, description, author and date are assumed to be pretty basic data // everything else is accessible through $page['meta']