More descriptive sanitized paths for file repo errors
authorFran Rogers <krimpet@users.mediawiki.org>
Mon, 18 Aug 2008 20:06:16 +0000 (20:06 +0000)
committerFran Rogers <krimpet@users.mediawiki.org>
Mon, 18 Aug 2008 20:06:16 +0000 (20:06 +0000)
includes/filerepo/FSRepo.php
includes/filerepo/LocalRepo.php

index 08ec151..7acc531 100644 (file)
@@ -519,13 +519,13 @@ class FSRepo extends FileRepo {
                if ( !isset( $this->simpleCleanPairs ) ) {
                        global $IP;
                        $this->simpleCleanPairs = array(
-                               $this->directory => 'public',
-                               "{$this->directory}/temp" => 'temp',
+                               $this->directory => "mwrepo://{$this->name}/public",
+                               "{$this->directory}/temp" => "mwrepo://{$this->name}/temp",
                                $IP => '$IP',
                                dirname( __FILE__ ) => '$IP/extensions/WebStore',
                        );
                        if ( $this->deletedDir ) {
-                               $this->simpleCleanPairs[$this->deletedDir] = 'deleted';
+                               $this->simpleCleanPairs[$this->deletedDir] = "mwrepo://{$this->name}/deleted";
                        }
                }
                return strtr( $param, $this->simpleCleanPairs );
index 90b198c..b096ce0 100644 (file)
@@ -10,6 +10,21 @@ class LocalRepo extends FSRepo {
        var $fileFromRowFactory = array( 'LocalFile', 'newFromRow' );
        var $oldFileFromRowFactory = array( 'OldLocalFile', 'newFromRow' );
 
+       function __construct( $info ) {
+               parent::__construct( $info );
+
+               # Initialize simpleCleanPairs, to make errors less misleading
+               global $IP;
+               $this->simpleCleanPairs = array(
+                       $this->directory => '$wgUploadDirectory',
+                       wfTempDir() => '{wfTempDir()}',
+                       $IP => '$IP',
+               );
+               if ( $this->deletedDir ) {
+                       $this->simpleCleanPairs[$this->deletedDir] = '{$wgFileStore[\'deleted\'][\'directory\']}';
+               }
+       }
+
        function getSlaveDB() {
                return wfGetDB( DB_SLAVE );
        }