diff --git a/classes/Autoload.php b/classes/Autoload.php index 5f832d932..111d6e652 100644 --- a/classes/Autoload.php +++ b/classes/Autoload.php @@ -139,14 +139,18 @@ class Autoload else { $filename_tmp = tempnam(dirname($filename), basename($filename.'.')); - if($filename_tmp !== FALSE and file_put_contents($filename_tmp, $content, LOCK_EX) !== FALSE) + if ($filename_tmp !== false AND file_put_contents($filename_tmp, $content, LOCK_EX) !== false) { @rename($filename_tmp, $filename); @chmod($filename, 0666); } else + { // $filename_tmp couldn't be written. $filename should be there anyway (even if outdated), no need to die. error_log('Cannot write temporary file '.$filename_tmp); + if ($filename_tmp !== false) + unlink($filename_tmp); + } } $this->index = $classes; } @@ -189,4 +193,4 @@ class Autoload { return isset($this->index[$classname]) ? $this->index[$classname] : null; } -} +} \ No newline at end of file