mail: ignore unreadable files
authorMischa POSLAWSKY <perl@shiar.org>
Sun, 6 Dec 2020 06:11:06 +0000 (07:11 +0100)
committerMischa POSLAWSKY <perl@shiar.org>
Sat, 19 Dec 2020 02:01:43 +0000 (03:01 +0100)
Incorrect installation should be obvious without fatal errors.

mail/index.php

index 37b1edc72491013887cf03133bd84487e5d096e7..ce133c5943797cc38a62803e77aa0e8e9fb79493 100644 (file)
@@ -59,11 +59,15 @@ array_splice($rows, 0, -50);
 ob_start();
 print '<ul>';
 foreach (array_reverse($rows) as $filename) {
-       list ($headerdata) = explode("\n\n", file_get_contents($filename));
-       $head = parsemailhead($headerdata);
+       if (!is_readable($filename)) {
+               continue;
+       }
 
        printf('<li><a href="%s">', "/{$Page->handler}/".basename($filename));
 
+       list ($headerdata) = explode("\n\n", file_get_contents($filename));
+       $head = parsemailhead($headerdata);
+
        print $head['Subject'];
        printf(' <small class="date">%s</small>',
                showdate(explode('-', $head['date']->format('Y-m-d')))