add comments about the purpose of skins/common/common*.css files
[lhc/web/wiklou.git] / thumb.php
index b813ee3..362f304 100644 (file)
--- a/thumb.php
+++ b/thumb.php
@@ -71,9 +71,10 @@ function wfThumbHandle404() {
        }
        # Just get the URI path (REDIRECT_URL/REQUEST_URI is either a full URL or a path)
        if ( substr( $uriPath, 0, 1 ) !== '/' ) {
-               $uri = new Uri( $uriPath );
-               $uriPath = $uri->getPath();
-               if ( $uriPath === null ) {
+               $bits = wfParseUrl( $uriPath );
+               if ( $bits && isset( $bits['path'] ) ) {
+                       $uriPath = $bits['path'];
+               } else {
                        wfThumbError( 404, 'The source file for the specified thumbnail does not exist.' );
                        return;
                }
@@ -152,6 +153,13 @@ function wfStreamThumb( array $params ) {
                $img = wfLocalFile( $fileName );
        }
 
+       // Check the source file title
+       if ( !$img ) {
+               wfThumbError( 404, wfMessage( 'badtitletext' )->text() );
+               wfProfileOut( __METHOD__ );
+               return;
+       }
+
        // Check permissions if there are read restrictions
        $varyHeader = array();
        if ( !in_array( 'read', User::getGroupPermissions( array( '*' ) ), true ) ) {
@@ -166,11 +174,6 @@ function wfStreamThumb( array $params ) {
        }
 
        // Check the source file storage path
-       if ( !$img ) {
-               wfThumbError( 404, wfMessage( 'badtitletext' )->text() );
-               wfProfileOut( __METHOD__ );
-               return;
-       }
        if ( !$img->exists() ) {
                wfThumbError( 404, 'The source file for the specified thumbnail does not exist.' );
                wfProfileOut( __METHOD__ );