Fix erro TIMTHUMB. A mensagem que aparecia após o upgrade era "Could not find the...
authorHelbert dos Santos <helbert.ds@gmail.com>
Wed, 11 Jan 2012 12:55:27 +0000 (10:55 -0200)
committerHelbert dos Santos <helbert.ds@gmail.com>
Wed, 11 Jan 2012 12:55:27 +0000 (10:55 -0200)
wp-content/themes/redefor/scripts/timthumb.php

index d96a208..b3ca9a7 100644 (file)
@@ -836,6 +836,7 @@ class timthumb {
        }
        protected function getLocalImagePath($src){
                $src = preg_replace('/^\//', '', $src); //strip off the leading '/'
+               $realDocRoot = realpath($this->docRoot);
                if(! $this->docRoot){
                        $this->debug(3, "We have no document root set, so as a last resort, lets check if the image is in the current dir and serve that.");
                        //We don't support serving images outside the current dir if we don't have a doc root for security reasons.
@@ -850,7 +851,7 @@ class timthumb {
                if(file_exists ($this->docRoot . '/' . $src)) {
                        $this->debug(3, "Found file as " . $this->docRoot . '/' . $src);
                        $real = realpath($this->docRoot . '/' . $src);
-                       if(stripos($real, $this->docRoot) == 0){
+                       if(stripos($real, $realDocRoot) == 0){
                                return $real;
                        } else {
                                $this->debug(1, "Security block: The file specified occurs outside the document root.");
@@ -862,7 +863,7 @@ class timthumb {
                if($absolute && file_exists($absolute)){ //realpath does file_exists check, so can probably skip the exists check here
                        $this->debug(3, "Found absolute path: $absolute");
                        if(! $this->docRoot){ $this->sanityFail("docRoot not set when checking absolute path."); }
-                       if(stripos($absolute, $this->docRoot) == 0){
+                       if(stripos($absolute, $realDocRoot) == 0){
                                return $absolute;
                        } else {
                                $this->debug(1, "Security block: The file specified occurs outside the document root.");
@@ -885,7 +886,7 @@ class timthumb {
                        if(file_exists($base . $src)){
                                $this->debug(3, "Found file as: " . $base . $src);
                                $real = realpath($base . $src);
-                               if(stripos($real, $this->docRoot) == 0){ 
+                               if(stripos($real, $realDocRoot) == 0){ 
                                        return $real;
                                } else {
                                        $this->debug(1, "Security block: The file specified occurs outside the document root.");