Added sanity check to StreamFile for mwstore paths.
authorAaron Schulz <aschulz@wikimedia.org>
Thu, 23 Aug 2012 03:46:54 +0000 (20:46 -0700)
committerAaron Schulz <aschulz@wikimedia.org>
Thu, 23 Aug 2012 03:46:54 +0000 (20:46 -0700)
Change-Id: Id402f077037f3e84c9158f7d48be0ed82ba4a1cf

includes/GlobalFunctions.php
includes/StreamFile.php

index 4252f55..35c7bbb 100644 (file)
@@ -2607,7 +2607,7 @@ function wfMkdirParents( $dir, $mode = null, $caller = null ) {
        global $wgDirectoryMode;
 
        if ( FileBackend::isStoragePath( $dir ) ) { // sanity
-               throw new MWException( __FUNCTION__ . " given storage path `$dir`.");
+               throw new MWException( __FUNCTION__ . " given storage path '$dir'." );
        }
 
        if ( !is_null( $caller ) ) {
index 6539e08..e7f7811 100644 (file)
@@ -31,7 +31,7 @@ class StreamFile {
         * Stream a file to the browser, adding all the headings and fun stuff.
         * Headers sent include: Content-type, Content-Length, Last-Modified,
         * and Content-Disposition.
-        * 
+        *
         * @param $fname string Full name and path of the file to stream
         * @param $headers array Any additional headers to send
         * @param $sendErrors bool Send error messages if errors occur (like 404)
@@ -40,6 +40,10 @@ class StreamFile {
        public static function stream( $fname, $headers = array(), $sendErrors = true ) {
                wfProfileIn( __METHOD__ );
 
+               if ( FileBackend::isStoragePath( $fname ) ) { // sanity
+                       throw new MWException( __FUNCTION__ . " given storage path '$fname'." );
+               }
+
                wfSuppressWarnings();
                $stat = stat( $fname );
                wfRestoreWarnings();
@@ -142,7 +146,7 @@ class StreamFile {
 
        /**
         * Determine the file type of a file based on the path
-        * 
+        *
         * @param $filename string Storage path or file system path
         * @param $safe bool Whether to do retroactive upload blacklist checks
         * @return null|string