From f1b0c7bc374c8468781910ef70071ed01dd56f87 Mon Sep 17 00:00:00 2001 From: Tim Starling Date: Wed, 5 Apr 2006 04:17:21 +0000 Subject: [PATCH] Return 404 for non-existent pages. Nonexistent titles are not null, contrary to the assumptions of the original author. --- includes/RawPage.php | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/includes/RawPage.php b/includes/RawPage.php index 53b49ec11a..5685385cc6 100644 --- a/includes/RawPage.php +++ b/includes/RawPage.php @@ -151,12 +151,13 @@ class RawPage { } function getArticleText() { + $found = false; + $text = ''; if( $this->mTitle ) { - $text = ''; - // If it's a MediaWiki message we can just hit the message cache if ( $this->mTitle->getNamespace() == NS_MEDIAWIKI ) { $text = wfMsgForContentNoTrans( $this->mTitle->getDbkey() ); + $found = true; } else { // Get it from the DB $rev = Revision::newFromTitle( $this->mTitle, $this->mOldId ); @@ -164,22 +165,21 @@ class RawPage { $lastmod = wfTimestamp( TS_RFC2822, $rev->getTimestamp() ); header( "Last-modified: $lastmod" ); $text = $rev->getText(); - } else - $text = ''; + $found = true; + } } - - return $this->parseArticleText( $text ); } # Bad title or page does not exist - if( $this->mContentType == 'text/x-wiki' ) { + if( !$found && $this->mContentType == 'text/x-wiki' ) { # Don't return a 404 response for CSS or JavaScript; # 404s aren't generally cached and it would create # extra hits when user CSS/JS are on and the user doesn't # have the pages. header( "HTTP/1.0 404 Not Found" ); } - return ''; + + return $this->parseArticleText( $text ); } function parseArticleText( $text ) { -- 2.20.1