Browse Source

Merging fixes and enhancements into trunk.

Revision: [2265]
Corrected error when cached file was found with partial matching name.

git-svn-id: https://svn.cakephp.org/repo/trunk/cake@2266 3807eeeb-6ff5-0310-8944-8be069107fe0
phpnut 20 years ago
parent
commit
61730a94c5
2 changed files with 22 additions and 17 deletions
  1. 1 1
      VERSION.txt
  2. 21 16
      cake/bootstrap.php

+ 1 - 1
VERSION.txt

@@ -6,4 +6,4 @@
 // +---------------------------------------------------------------------------------------------------+ //
 ///////////////////////////////////////////////////////////////////////////////////////////////////////////
 
-1.0.0.2264
+1.0.0.2266

+ 21 - 16
cake/bootstrap.php

@@ -114,32 +114,37 @@ if(defined('CACHE_CHECK') && CACHE_CHECK === true)
         $uri = setUri();
     }
 
-    $filename = CACHE.'views'.DS.'*'.str_replace('/', '_', $uri).'*';
+    $pattern = str_replace('/', '_', $uri);
+    $filename = CACHE.'views'.DS.'*'.$pattern .'*';
     $files = glob($filename);
 
-    if(isset($files[0]))
+    foreach ($files as $file)
     {
-        if (file_exists($files[0]))
+        if (preg_match('/('.$pattern.')(_{0,2}\\d+)/', $file))
         {
-            if (preg_match('/(\\d+).php/', $files[0], $match))
+            if (file_exists($file))
             {
-                if(time() >= $match['1'])
+                if (preg_match('/(\\d+).php/', $file, $match))
                 {
-                    @unlink($files[0]);
-                    unset($out);
-                }
-                else
-                {
-                    ob_start();
-                    include($files[0]);
-                    if (DEBUG)
+                    if(time() >= $match['1'])
+                    {
+                        @unlink($file);
+                        unset($out);
+                    }
+                    else
                     {
-                        echo "<!-- Cached Render Time: ". round(getMicrotime() - $TIME_START, 4) ."s -->";
+                        ob_start();
+                        include($file);
+                        if (DEBUG)
+                        {
+                            echo "<!-- Cached Render Time: ". round(getMicrotime() - $TIME_START, 4) ."s -->";
+                        }
+                        $out = ob_get_clean();
+                        die(e($out));
                     }
-                    $out = ob_get_clean();
-                    die(e($out));
                 }
             }
+            break;
         }
     }
 }